{
    "openapi": "3.1.0",
    "info": {
        "title": "BeMart Page Resource API Doc",
        "description": "BeMart page resources generated from BEAR.Sunday source, ALPS vocabulary, and available fake data fixtures.",
        "version": "1.0.0"
    },
    "paths": {
        "/action-redirect": {
            "get": {
                "summary": "Safe HTML endpoint for legacy storefront links whose state transition is\nperformed by JavaScript or by a POST-only route in EC-CUBE.",
                "description": "It never renders a placeholder page. The browser is redirected to a stable\npage so link crawls do not surface \"not implemented\" copy while templates\nare migrated to explicit POST forms.",
                "parameters": [
                    {
                        "name": "returnTo",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string"
                        },
                        "description": "\u30da\u30fc\u30b8URL\uff08\u5165\u529b\uff09 - \u30da\u30fc\u30b8\u306eURL\u30d1\u30b9\uff08Symfony\u30eb\u30fc\u30c8\u540d\u3002\u4f8b: homepage, product_list\uff09",
                        "example": "/products"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/action-redirectResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            },
            "post": {
                "summary": "Safe HTML endpoint for legacy storefront links whose state transition is\nperformed by JavaScript or by a POST-only route in EC-CUBE.",
                "description": "It never renders a placeholder page. The browser is redirected to a stable\npage so link crawls do not surface \"not implemented\" copy while templates\nare migrated to explicit POST forms.",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "returnTo": {
                                        "title": "\u30da\u30fc\u30b8URL\uff08\u5165\u529b\uff09",
                                        "description": "\u30da\u30fc\u30b8\u306eURL\u30d1\u30b9\uff08Symfony\u30eb\u30fc\u30c8\u540d\u3002\u4f8b: homepage, product_list\uff09",
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 2048,
                                        "example": "/products",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    }
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/POST/action-redirectResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/cart": {
            "get": {
                "operationId": "goCart",
                "summary": "ALPS `goCart` \u306b\u5bfe\u5fdc\u3059\u308b GET \u64cd\u4f5c\u3002",
                "parameters": [
                    {
                        "name": "sessionPrefix",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string"
                        },
                        "description": "\u30bb\u30c3\u30b7\u30e7\u30f3\u63a5\u982d\u8f9e\uff08\u5165\u529b\uff09 - \u8cfc\u5165\u30d5\u30ed\u30fc\u306e\u30ab\u30fc\u30c8\u30ad\u30fc\u3092\u69cb\u6210\u3059\u308b\u30bb\u30c3\u30b7\u30e7\u30f3\u30b9\u30b3\u30fc\u30d7\u306e\u63a5\u982d\u8f9e\u3002saleTypeId \u3068\u7d44\u307f\u5408\u308f\u305b\u3066\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306e\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 16\u301c23; \u89b3\u5bdf\u5024 'session-prefix-1', 'session-checkout-pilot5'\u3002",
                        "example": "session-prefix-1"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/cartResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/contact": {
            "get": {
                "operationId": "goContactForm",
                "summary": "EC-CUBE goContactForm \u2014 show the contact form scaffolding.",
                "description": "Pure form-info endpoint: no Be Framework involved, no domain\nlogic. Anonymous-accessible (returns 200 regardless of session\nstate). `csrfToken` carries the trusted reference\n{@see \\CsrfToken::$token} issues \u2014 the HTML port\nrenders it into the form's hidden `_token` input so the\nsubsequent POST passes CSRF validation.",
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/contactResponse"
                                }
                            }
                        }
                    }
                }
            },
            "post": {
                "operationId": "doSubmitContact",
                "summary": "ALPS `doSubmitContact` \u306b\u5bfe\u5fdc\u3059\u308b POST \u64cd\u4f5c\u3002",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "contactName01": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 255,
                                        "title": "\u304a\u554f\u3044\u5408\u308f\u305b\u59d3\uff08\u5165\u529b\uff09",
                                        "description": "\u304a\u554f\u3044\u5408\u308f\u305b\u30d5\u30a9\u30fc\u30e0\u306e\u59d3\u3002\u5185\u90e8\u7684\u306b\u306fNameType\u306ename01\u3068\u540c\u3058\u4ed5\u7d44\u307f",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "contactName02": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 255,
                                        "title": "\u304a\u554f\u3044\u5408\u308f\u305b\u540d\uff08\u5165\u529b\uff09",
                                        "description": "\u304a\u554f\u3044\u5408\u308f\u305b\u30d5\u30a9\u30fc\u30e0\u306e\u540d\u3002\u5185\u90e8\u7684\u306b\u306fNameType\u306ename02\u3068\u540c\u3058\u4ed5\u7d44\u307f",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "contactEmail": {
                                        "title": "\u304a\u554f\u3044\u5408\u308f\u305b\u30e1\u30fc\u30eb\uff08\u5165\u529b\uff09",
                                        "description": "\u304a\u554f\u3044\u5408\u308f\u305b\u30d5\u30a9\u30fc\u30e0\u306e\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 254,
                                        "example": "alice@example.com",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "contactContents": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 2000,
                                        "title": "\u304a\u554f\u3044\u5408\u308f\u305b\u5185\u5bb9\uff08\u5165\u529b\uff09",
                                        "description": "\u304a\u554f\u3044\u5408\u308f\u305b\u30d5\u30a9\u30fc\u30e0\u306e\u672c\u6587",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "mode": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 32,
                                        "title": "\u30d5\u30a9\u30fc\u30e0\u64cd\u4f5c\u30e2\u30fc\u30c9",
                                        "$comment": "EC-CUBE compatible HTML form submit mode.",
                                        "description": "\u30d5\u30a9\u30fc\u30e0\u64cd\u4f5c\u30e2\u30fc\u30c9"
                                    }
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/POST/contactResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/entry": {
            "get": {
                "operationId": "goCustomerRegistration",
                "summary": "EC-CUBE goCustomerRegistration \u2014 show the customer registration\nform scaffolding.",
                "description": "Pure form-info endpoint: no Be Framework involved, no domain\nlogic. Anonymous-accessible (returns 200 regardless of session\nstate). Fields mirror RegisterCustomerInput: 4 required + 11\noptional. In the dev/html fake-CSRF environment we expose the fake\ntoken into the hidden `_token` input so a real browser form submit\ncan exercise the POST path instead of failing at the boundary.",
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/entryResponse"
                                }
                            }
                        }
                    }
                }
            },
            "post": {
                "operationId": "doRegisterCustomer",
                "summary": "Phase B Slice 9: every form field is user-controlled input. Declared\nas taint sources so Psalm can trace them. Semantic value objects\nformat-validate but do not universally escape \u2014 sinks downstream\nstill need their own defense (bound params, HTML escape on render).",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "email": {
                                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\uff08\u5165\u529b\uff09",
                                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u3002\u4f1a\u54e1\u767b\u9332\u30fb\u30ed\u30b0\u30a4\u30f3\u30fb\u901a\u77e5\u3067\u5171\u901a\u306b\u4f7f\u3046\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 15\u301c58; \u89b3\u5bdf\u5024 'bob@example.com', 'login-test@example.com', 'alice@example.com', 'carol@example.com', 'provisional@example.com', 'withdrawn-30000000aaaa3333bbbb4444cccc5555@example.invalid'\u3002",
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 254,
                                        "example": "alice@example.com",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "password": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 128,
                                        "title": "\u30d1\u30b9\u30ef\u30fc\u30c9\uff08\u5165\u529b\uff09",
                                        "description": "\u66f8\u304d\u8fbc\u307f\u5c02\u7528\uff08\u30cf\u30c3\u30b7\u30e5\u5316\u3057\u3066\u4fdd\u5b58\uff09 Fake\u89b3\u5bdf\u6587\u5b57\u9577 50\u301c63; \u89b3\u5bdf\u5024 '$2y$12$stXeC3GBw5uMLkgK/6Vb0.R7XLnwERRqWM/Hl7rtAhp4IcHoK8eWi', '$2y$10$deputyplaceholder.hash.never.verified.0123456789abcdef', '$2y$10$zyxwvutsrqponmlkjihgfedcbaZYXWVUTSRQPONMLKJIHGFEDCBA9876', '$2y$12$lbpzHVyv.ytzJju.4xk9Au5tPePdQe1WFH6sLWeWwcvIKbn0vMnE.', '$2y$10$shopownerplaceholder.hash.never.verified.0123456789ab', '$2y$10$abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123', '$2y$10$0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRS', '$2y$12$placeholder.hash.never.verified.never.0123456789abcde'\u3002",
                                        "example": "$2y$12$stXeC3GBw5uMLkgK/6Vb0.R7XLnwERRqWM/Hl7rtAhp4IcHoK8eWi",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "name01": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 80,
                                        "title": "\u59d3\uff08\u5165\u529b\uff09",
                                        "description": "\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u30fb\u304a\u554f\u3044\u5408\u308f\u305b\u3067\u5171\u901a\u4f7f\u7528\u3055\u308c\u308b\u59d3 Fake\u89b3\u5bdf\u6587\u5b57\u9577 2\u301c2; \u89b3\u5bdf\u5024 '\u9234\u6728', '\u5c71\u7530', '\u4f50\u85e4', '\u9ad8\u6a4b', '\u9000\u4f1a'\u3002",
                                        "example": "\u9234\u6728",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "name02": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 80,
                                        "title": "\u540d\uff08\u5165\u529b\uff09",
                                        "description": "\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u30fb\u304a\u554f\u3044\u5408\u308f\u305b\u3067\u5171\u901a\u4f7f\u7528\u3055\u308c\u308b\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 1\u301c3; \u89b3\u5bdf\u5024 '\u30a2\u30ea\u30b9', '\u592a\u90ce', '\u6b21\u90ce', '\u82b1\u5b50', '\u4e09\u90ce', '\u6e08'\u3002",
                                        "example": "\u30a2\u30ea\u30b9",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "kana01": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 32,
                                        "title": "\u30bb\u30a4\uff08\u5165\u529b\uff09",
                                        "description": "\u59d3\u306e\u30ab\u30bf\u30ab\u30ca\u8aad\u307f\u3002\u5168\u89d2\u30ab\u30bf\u30ab\u30ca\u306e\u307f\u8a31\u53ef\uff08\u3072\u3089\u304c\u306a\u5165\u529b\u6642\u306f\u81ea\u52d5\u5909\u63db\uff09\u3002\u65e5\u672c\u306e\u6c0f\u540d\u5165\u529b\u306b\u7279\u6709\u306e\u8aad\u307f\u4eee\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 3\u301c3; \u89b3\u5bdf\u5024 '\u30e4\u30de\u30c0', '\u30b5\u30c8\u30a6'; null 18/31\u3002",
                                        "example": "\u30e4\u30de\u30c0",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "kana02": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 32,
                                        "title": "\u30e1\u30a4\uff08\u5165\u529b\uff09",
                                        "description": "\u540d\u306e\u30ab\u30bf\u30ab\u30ca\u8aad\u307f\u3002\u5168\u89d2\u30ab\u30bf\u30ab\u30ca\u306e\u307f\u8a31\u53ef\uff08\u3072\u3089\u304c\u306a\u5165\u529b\u6642\u306f\u81ea\u52d5\u5909\u63db\uff09\u3002\u65e5\u672c\u306e\u6c0f\u540d\u5165\u529b\u306b\u7279\u6709\u306e\u8aad\u307f\u4eee\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 3\u301c3; \u89b3\u5bdf\u5024 '\u30a2\u30ea\u30b9', '\u30cf\u30ca\u30b3', '\u30bf\u30ed\u30a6'; null 18/31\u3002",
                                        "example": "\u30a2\u30ea\u30b9",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "companyName": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 32,
                                        "title": "\u4f1a\u793e\u540d\uff08\u5165\u529b\uff09",
                                        "description": "\u6cd5\u4eba\u9867\u5ba2\u306e\u793e\u540d\u3002B2B\u53d6\u5f15\u3084\u30a4\u30f3\u30dc\u30a4\u30b9\u3067\u4f7f\u7528 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c11; \u89b3\u5bdf\u5024 'Acme Corp.', '\u682a\u5f0f\u4f1a\u793eEC-CUBE'; null 24/32\u3002",
                                        "example": "Acme Corp.",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "phoneNumber": {
                                        "title": "\u96fb\u8a71\u756a\u53f7\uff08\u5165\u529b\uff09",
                                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u3002Fake corpus\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3060\u304c\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3059\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c10; \u89b3\u5bdf\u5024 '0312345678', '0901234567', '0612345678'; null 18/33\u3002",
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 13,
                                        "example": "0312345678",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "postalCode": {
                                        "title": "\u90f5\u4fbf\u756a\u53f7\uff08\u5165\u529b\uff09",
                                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u6709\u7121\u3092\u3069\u3061\u3089\u3082\u53d7\u3051\u5165\u308c\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 7\u301c8; \u89b3\u5bdf\u5024 '1500001', '1000005', '5300001', '530-0001'; null 18/33\u3002",
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "example": "1500001",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "pref": {
                                        "title": "\u90fd\u9053\u5e9c\u770c\uff08\u5165\u529b\uff09",
                                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u90fd\u9053\u5e9c\u770cID\u3002\u4f4f\u6240\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u72b6\u614b\u3067\u306f0\u3001\u78ba\u5b9a\u4f4f\u6240\u3067\u306f1\u301c47\u3092\u4f7f\u3046\u3002 Fake\u89b3\u5bdf\u6570\u5024 13\u301c27; \u89b3\u5bdf\u5024 '13', '27'; null 3/9\u3002",
                                        "type": [
                                            "integer",
                                            "string",
                                            "null"
                                        ],
                                        "example": 13,
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "addr01": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 32,
                                        "title": "\u5e02\u533a\u753a\u6751\uff08\u5165\u529b\uff09",
                                        "description": "\u90fd\u9053\u5e9c\u770c\u3088\u308a\u4e0b\u4f4d\u306e\u5e02\u533a\u753a\u6751\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 3\u301c7; \u89b3\u5bdf\u5024 '\u6e0b\u8c37\u533a', '\u5343\u4ee3\u7530\u533a', '\u5927\u962a\u5e02\u5317\u533a', '\u5927\u962a\u5e02\u5317\u533a\u6885\u7530'; null 18/33\u3002",
                                        "example": "\u6e0b\u8c37\u533a",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "addr02": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 32,
                                        "title": "\u756a\u5730\u30fb\u5efa\u7269\u540d\uff08\u5165\u529b\uff09",
                                        "description": "\u756a\u5730\u30fb\u30d3\u30eb\u540d\u30fb\u90e8\u5c4b\u756a\u53f7\u7b49\u306e\u8a73\u7d30\u4f4f\u6240 Fake\u89b3\u5bdf\u6587\u5b57\u9577 5\u301c8; \u89b3\u5bdf\u5024 '\u795e\u5bae\u524d1-1-1', '\u4e38\u306e\u51852-2-2', '\u6885\u75301-1-1', '1-2-3'; null 18/33\u3002",
                                        "example": "\u795e\u5bae\u524d1-1-1",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "birth": {
                                        "title": "\u751f\u5e74\u6708\u65e5\uff08\u5165\u529b\uff09",
                                        "description": "\u4f1a\u54e1\u306e\u751f\u5e74\u6708\u65e5 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c10; \u89b3\u5bdf\u5024 '1990-04-01', '1985-12-15'; null 18/28\u3002",
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "example": "1990-04-01",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "sex": {
                                        "type": [
                                            "integer",
                                            "string",
                                            "null"
                                        ],
                                        "title": "\u6027\u5225\uff08\u5165\u529b\uff09",
                                        "description": "1=\u7537\u6027, 2=\u5973\u6027, 3=\u305d\u306e\u4ed6, 4=\u56de\u7b54\u3057\u306a\u3044 Fake\u89b3\u5bdf\u6570\u5024 2\u301c2; \u89b3\u5bdf\u5024 '2'; null 3/5\u3002",
                                        "example": 2,
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "job": {
                                        "type": [
                                            "integer",
                                            "string",
                                            "null"
                                        ],
                                        "title": "\u8077\u696d\uff08\u5165\u529b\uff09",
                                        "description": "1=\u516c\u52d9\u54e1\u301c18=\u305d\u306e\u4ed6\u306e18\u533a\u5206 Fake\u89b3\u5bdf\u6570\u5024 7\u301c18; \u89b3\u5bdf\u5024 '7', '18'; null 3/5\u3002",
                                        "example": 7,
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "email_confirm": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 254,
                                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u78ba\u8a8d\uff08\u5165\u529b\uff09",
                                        "description": "HTML\u4f1a\u54e1\u767b\u9332\u30d5\u30a9\u30fc\u30e0\u306e\u78ba\u8a8d\u7528\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u3002Resource\u5883\u754c\u3067email\u3068\u7167\u5408\u3059\u308b\u3002",
                                        "$comment": "Browser-form boundary field; not persisted."
                                    },
                                    "password_confirm": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 128,
                                        "title": "\u30d1\u30b9\u30ef\u30fc\u30c9\u78ba\u8a8d\uff08\u5165\u529b\uff09",
                                        "description": "HTML\u4f1a\u54e1\u767b\u9332\u30d5\u30a9\u30fc\u30e0\u306e\u78ba\u8a8d\u7528\u30d1\u30b9\u30ef\u30fc\u30c9\u3002Resource\u5883\u754c\u3067password\u3068\u7167\u5408\u3057\u3001\u5931\u6557\u6642\u3082\u518d\u8868\u793a\u3057\u306a\u3044\u3002",
                                        "$comment": "Browser-form boundary field; not persisted."
                                    },
                                    "birth_year": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 4,
                                        "title": "\u751f\u5e74\u6708\u65e5 \u5e74\uff08\u5165\u529b\uff09",
                                        "$comment": "Browser-form boundary field; combined into birth.",
                                        "description": "\u751f\u5e74\u6708\u65e5 \u5e74\uff08\u5165\u529b\uff09"
                                    },
                                    "birth_month": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 2,
                                        "title": "\u751f\u5e74\u6708\u65e5 \u6708\uff08\u5165\u529b\uff09",
                                        "$comment": "Browser-form boundary field; combined into birth.",
                                        "description": "\u751f\u5e74\u6708\u65e5 \u6708\uff08\u5165\u529b\uff09"
                                    },
                                    "birth_day": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 2,
                                        "title": "\u751f\u5e74\u6708\u65e5 \u65e5\uff08\u5165\u529b\uff09",
                                        "$comment": "Browser-form boundary field; combined into birth.",
                                        "description": "\u751f\u5e74\u6708\u65e5 \u65e5\uff08\u5165\u529b\uff09"
                                    },
                                    "user_policy_check": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 16,
                                        "title": "\u5229\u7528\u898f\u7d04\u540c\u610f\uff08\u5165\u529b\uff09",
                                        "$comment": "Browser-form boundary field; required only for HTML registration submissions.",
                                        "description": "\u5229\u7528\u898f\u7d04\u540c\u610f\uff08\u5165\u529b\uff09"
                                    },
                                    "mode": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 32,
                                        "title": "\u30d5\u30a9\u30fc\u30e0\u64cd\u4f5c\u30e2\u30fc\u30c9",
                                        "$comment": "EC-CUBE compatible HTML form submit mode.",
                                        "description": "\u30d5\u30a9\u30fc\u30e0\u64cd\u4f5c\u30e2\u30fc\u30c9"
                                    }
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/POST/entryResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/forgot-complete": {
            "get": {
                "operationId": "doRequestPasswordReset",
                "summary": "EC-CUBE goForgotComplete \u2014 render the reset-mail-sent confirmation\npage scaffolding.",
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/forgot-completeResponse"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/forgot-password": {
            "get": {
                "operationId": "doRequestPasswordReset",
                "summary": "EC-CUBE goRequestPasswordReset \u2014 show the password-reset-request\nform scaffolding.",
                "description": "Pure form-info endpoint: no Be Framework, no domain logic.\nAnonymous-accessible (returns 200 regardless of session state).",
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/forgot-passwordResponse"
                                }
                            }
                        }
                    }
                }
            },
            "post": {
                "operationId": "doRequestPasswordReset",
                "summary": "ALPS `doRequestPasswordReset` \u306b\u5bfe\u5fdc\u3059\u308b POST \u64cd\u4f5c\u3002",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "email": {
                                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\uff08\u5165\u529b\uff09",
                                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u3002\u4f1a\u54e1\u767b\u9332\u30fb\u30ed\u30b0\u30a4\u30f3\u30fb\u901a\u77e5\u3067\u5171\u901a\u306b\u4f7f\u3046\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 15\u301c58; \u89b3\u5bdf\u5024 'bob@example.com', 'login-test@example.com', 'alice@example.com', 'carol@example.com', 'provisional@example.com', 'withdrawn-30000000aaaa3333bbbb4444cccc5555@example.invalid'\u3002",
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 254,
                                        "example": "alice@example.com",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    }
                                },
                                "required": [
                                    "email"
                                ]
                            }
                        }
                    },
                    "required": true
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/POST/forgot-passwordResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/index": {
            "get": {
                "operationId": "goTop",
                "summary": "EC-CUBE goTop \u2014 render the top page scaffolding.",
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/indexResponse"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/login": {
            "get": {
                "operationId": "goLogin",
                "summary": "EC-CUBE goLogin \u2014 show the login form scaffolding.",
                "description": "Pure form-info endpoint: no Be Framework involved, no domain\nlogic. Anonymous-accessible (returns 200 regardless of session\nstate). The `csrfToken` body field carries the trusted reference\n{@see \\CsrfToken::$token} issues, which the HTML port\nrenders into the form's hidden `_csrf_token` input so the\nsubsequent POST passes CSRF validation.",
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/loginResponse"
                                }
                            }
                        }
                    }
                }
            },
            "post": {
                "operationId": "doLogin",
                "summary": "Phase B Slice 9: every form field is user-controlled input.",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "email": {
                                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\uff08\u5165\u529b\uff09",
                                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u3002\u4f1a\u54e1\u767b\u9332\u30fb\u30ed\u30b0\u30a4\u30f3\u30fb\u901a\u77e5\u3067\u5171\u901a\u306b\u4f7f\u3046\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 15\u301c58; \u89b3\u5bdf\u5024 'bob@example.com', 'login-test@example.com', 'alice@example.com', 'carol@example.com', 'provisional@example.com', 'withdrawn-30000000aaaa3333bbbb4444cccc5555@example.invalid'\u3002",
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 254,
                                        "example": "alice@example.com",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "password": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 128,
                                        "title": "\u30d1\u30b9\u30ef\u30fc\u30c9\uff08\u5165\u529b\uff09",
                                        "description": "\u66f8\u304d\u8fbc\u307f\u5c02\u7528\uff08\u30cf\u30c3\u30b7\u30e5\u5316\u3057\u3066\u4fdd\u5b58\uff09 Fake\u89b3\u5bdf\u6587\u5b57\u9577 50\u301c63; \u89b3\u5bdf\u5024 '$2y$12$stXeC3GBw5uMLkgK/6Vb0.R7XLnwERRqWM/Hl7rtAhp4IcHoK8eWi', '$2y$10$deputyplaceholder.hash.never.verified.0123456789abcdef', '$2y$10$zyxwvutsrqponmlkjihgfedcbaZYXWVUTSRQPONMLKJIHGFEDCBA9876', '$2y$12$lbpzHVyv.ytzJju.4xk9Au5tPePdQe1WFH6sLWeWwcvIKbn0vMnE.', '$2y$10$shopownerplaceholder.hash.never.verified.0123456789ab', '$2y$10$abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123', '$2y$10$0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRS', '$2y$12$placeholder.hash.never.verified.never.0123456789abcde'\u3002",
                                        "example": "$2y$12$stXeC3GBw5uMLkgK/6Vb0.R7XLnwERRqWM/Hl7rtAhp4IcHoK8eWi",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "mode": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 32,
                                        "title": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u30e2\u30fc\u30c9",
                                        "description": "HTML\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u3092Resource/JSON\u5883\u754c\u3068\u533a\u5225\u3059\u308b\u305f\u3081\u306e\u4efb\u610f\u30d1\u30e9\u30e1\u30fc\u30bf\u3002\u30ed\u30b0\u30a4\u30f3\u753b\u9762\u3067\u306f browser form re-render \u5224\u5b9a\u306b\u3060\u3051\u4f7f\u3046\u3002",
                                        "example": "login"
                                    }
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/POST/loginResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/logout": {
            "post": {
                "operationId": "doLogout",
                "summary": "Phase B Slice 9: the CSRF token is user-controlled input.",
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/POST/logoutResponse"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/mypage": {
            "get": {
                "operationId": "goMypage",
                "summary": "ALPS `goMypage` \u306b\u5bfe\u5fdc\u3059\u308b GET \u64cd\u4f5c\u3002",
                "parameters": [
                    {
                        "name": "orderLimit",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        },
                        "description": "\u4e00\u89a7\u5236\u5fa1\u9805\u76ee\uff08\u5165\u529b\uff09 - /mypage \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8fd4\u3059\u4e00\u89a7\u5236\u5fa1\u9805\u76ee\u3002\u4e00\u89a7\u3001\u96c6\u8a08\u3001CSV\u51e6\u7406\u7d50\u679c\u306e\u898f\u6a21\u3092\u8868\u3059\u975e\u8ca0\u306e\u6570\u5024\u3002"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/mypageResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/product": {
            "get": {
                "operationId": "goProduct",
                "summary": "Phase B Slice 9: `$productCode` is user input (URI / query param);\ndeclared explicitly so Psalm taint analysis can trace it through\nBecoming into any downstream sink. The Be Semantic\\ProductCode\nconstructor format-validates but does not escape \u2014 sinks downstream\nstill need to defend (e.g. bound parameters for SQL).",
                "parameters": [
                    {
                        "name": "productCode",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "\u5546\u54c1\u30b3\u30fc\u30c9\uff08\u5165\u529b\uff09 - SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 \u5546\u54c1\u3092\u8b58\u5225\u3059\u308bSKU\u3002Fake corpus\u3067\u306fASCII\u82f1\u6570\u30fb\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3067\u3001\u53d7\u6ce8\u660e\u7d30/\u30ab\u30fc\u30c8\u660e\u7d30\u306e\u7d50\u5408\u30ad\u30fc\u306b\u306a\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c26\u3002",
                        "example": "sample-001"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/productResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/products": {
            "get": {
                "operationId": "goProductList",
                "summary": "EC-CUBE goProductList \u2014 render the product-list page.",
                "description": "`name` is the EC-CUBE header search field. `nameKeyword` is accepted\nas a BeMart/API-friendly alias.",
                "parameters": [
                    {
                        "name": "name",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string"
                        },
                        "description": "\u5546\u54c1\u540d - /products \u3067\u8868\u793a\u3059\u308b\u5546\u54c1\u540d\u3002\u691c\u7d22\u30fb\u4e00\u89a7\u30fb\u8a73\u7d30\u3067\u30e6\u30fc\u30b6\u30fc\u306b\u898b\u305b\u308b\u8ca9\u58f2\u540d\u3002",
                        "example": "\u30c6\u30b9\u30c8\u7ba1\u7406\u8005"
                    },
                    {
                        "name": "nameKeyword",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string"
                        },
                        "description": "\u540d\u524d\u691c\u7d22\u30ad\u30fc\u30ef\u30fc\u30c9 - /products \u306e\u691c\u7d22\u6761\u4ef6\u3002\u5546\u54c1\u540d\u30fb\u4f1a\u54e1\u540d\u30fb\u7ba1\u7406\u8005\u540d\u306a\u3069\u3001\u3053\u306e\u4e00\u89a7\u753b\u9762\u3067\u540d\u524d\u3068\u3057\u3066\u6271\u3046\u8868\u793a\u540d\u3092\u90e8\u5206\u4e00\u81f4\u691c\u7d22\u3059\u308b\u3002",
                        "example": "\u9234\u6728"
                    },
                    {
                        "name": "limit",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        },
                        "description": "\u8868\u793a\u4ef6\u6570\uff08\u5165\u529b\uff09 - /products \u306e\u4e00\u89a7\u8868\u793a\u3092\u5236\u5fa1\u3059\u308b\u30da\u30fc\u30b8\u30f3\u30b0/\u691c\u7d22\u6761\u4ef6\u3002\u4ef6\u6570\u3001\u958b\u59cb\u4f4d\u7f6e\u3001\u4e26\u3073\u9806\u3001\u524d\u5f8c\u30ea\u30f3\u30af\u3092\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u304c\u518d\u73fe\u3059\u308b\u305f\u3081\u306e\u5024\u3002"
                    },
                    {
                        "name": "offset",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        },
                        "description": "\u958b\u59cb\u4f4d\u7f6e\uff08\u5165\u529b\uff09 - /products \u306e\u4e00\u89a7\u8868\u793a\u3092\u5236\u5fa1\u3059\u308b\u30da\u30fc\u30b8\u30f3\u30b0/\u691c\u7d22\u6761\u4ef6\u3002\u4ef6\u6570\u3001\u958b\u59cb\u4f4d\u7f6e\u3001\u4e26\u3073\u9806\u3001\u524d\u5f8c\u30ea\u30f3\u30af\u3092\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u304c\u518d\u73fe\u3059\u308b\u305f\u3081\u306e\u5024\u3002"
                    },
                    {
                        "name": "category_id",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string"
                        },
                        "description": "\u30ab\u30c6\u30b4\u30eaID\uff08\u691c\u7d22\u5165\u529b\uff09 - /products \u306e\u30ab\u30c6\u30b4\u30ea\u7d5e\u308a\u8fbc\u307f\u3067HTML query string\u3068\u3057\u3066\u9001\u3089\u308c\u308b\u30ab\u30c6\u30b4\u30eaID\u3002Resource\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u3067\u53d7\u3051\u53d6\u308a\u3001\u30ab\u30c6\u30b4\u30ea\u540d\u89e3\u6c7a\u306b\u4f7f\u3046\u3002"
                    },
                    {
                        "name": "pageno",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string"
                        },
                        "description": "\u30da\u30fc\u30b8\u756a\u53f7\uff08\u5165\u529b\uff09 - /products \u306e\u4e00\u89a7\u8868\u793a\u3092\u5236\u5fa1\u3059\u308b\u30da\u30fc\u30b8\u30f3\u30b0/\u691c\u7d22\u6761\u4ef6\u3002\u4ef6\u6570\u3001\u958b\u59cb\u4f4d\u7f6e\u3001\u4e26\u3073\u9806\u3001\u524d\u5f8c\u30ea\u30f3\u30af\u3092\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u304c\u518d\u73fe\u3059\u308b\u305f\u3081\u306e\u5024\u3002"
                    },
                    {
                        "name": "disp_number",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string"
                        },
                        "description": "\u8868\u793a\u4ef6\u6570\u6307\u5b9a\uff08\u5165\u529b\uff09 - /products \u306e\u4e00\u89a7\u8868\u793a\u3092\u5236\u5fa1\u3059\u308b\u30da\u30fc\u30b8\u30f3\u30b0/\u691c\u7d22\u6761\u4ef6\u3002\u4ef6\u6570\u3001\u958b\u59cb\u4f4d\u7f6e\u3001\u4e26\u3073\u9806\u3001\u524d\u5f8c\u30ea\u30f3\u30af\u3092\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u304c\u518d\u73fe\u3059\u308b\u305f\u3081\u306e\u5024\u3002"
                    },
                    {
                        "name": "orderby",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string"
                        },
                        "description": "\u4e26\u3073\u9806\uff08\u5165\u529b\uff09 - /products \u306e\u4e00\u89a7\u8868\u793a\u3092\u5236\u5fa1\u3059\u308b\u30da\u30fc\u30b8\u30f3\u30b0/\u691c\u7d22\u6761\u4ef6\u3002\u4ef6\u6570\u3001\u958b\u59cb\u4f4d\u7f6e\u3001\u4e26\u3073\u9806\u3001\u524d\u5f8c\u30ea\u30f3\u30af\u3092\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u304c\u518d\u73fe\u3059\u308b\u305f\u3081\u306e\u5024\u3002"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/productsResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/reset": {
            "get": {
                "operationId": "doResetPassword",
                "summary": "EC-CUBE goResetPassword \u2014 show the new-password form scaffolding\n(EC-CUBE `Forgot/reset.twig`).",
                "description": "Pure form-info endpoint: no Be Framework, no domain logic.\nAnonymous-accessible (the reset-key check is the POST's job). The\n`resetKey` arrives as a query param on the emailed reset link and\nis carried into a hidden form field for the subsequent POST.",
                "parameters": [
                    {
                        "name": "resetKey",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string"
                        },
                        "description": "\u30d1\u30b9\u30ef\u30fc\u30c9\u30ea\u30bb\u30c3\u30c8\u30ad\u30fc\uff08\u5165\u529b\uff09 - \u30d1\u30b9\u30ef\u30fc\u30c9\u30ea\u30bb\u30c3\u30c8\u7528\u306e\u30ef\u30f3\u30bf\u30a4\u30e0\u30c8\u30fc\u30af\u30f3\u3002\u30ea\u30bb\u30c3\u30c8\u8981\u6c42\u6642\u306b\u751f\u6210\u3001\u4f7f\u7528\u5f8c\u306b\u30af\u30ea\u30a2 Fake\u89b3\u5bdf\u6587\u5b57\u9577 32\u301c34; \u89b3\u5bdf\u5024 'valid-reset-key-pilot15-aaaa1111', 'expired-token-key-pilot15-aaaa1111'\u3002",
                        "example": "valid-reset-key-pilot15-aaaa1111"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/resetResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            },
            "post": {
                "operationId": "doResetPassword",
                "summary": "ALPS `doResetPassword` \u306b\u5bfe\u5fdc\u3059\u308b POST \u64cd\u4f5c\u3002",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "resetKey": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 128,
                                        "title": "\u30d1\u30b9\u30ef\u30fc\u30c9\u30ea\u30bb\u30c3\u30c8\u30ad\u30fc\uff08\u5165\u529b\uff09",
                                        "description": "\u30d1\u30b9\u30ef\u30fc\u30c9\u30ea\u30bb\u30c3\u30c8\u7528\u306e\u30ef\u30f3\u30bf\u30a4\u30e0\u30c8\u30fc\u30af\u30f3\u3002\u30ea\u30bb\u30c3\u30c8\u8981\u6c42\u6642\u306b\u751f\u6210\u3001\u4f7f\u7528\u5f8c\u306b\u30af\u30ea\u30a2 Fake\u89b3\u5bdf\u6587\u5b57\u9577 32\u301c34; \u89b3\u5bdf\u5024 'valid-reset-key-pilot15-aaaa1111', 'expired-token-key-pilot15-aaaa1111'\u3002",
                                        "example": "valid-reset-key-pilot15-aaaa1111",
                                        "$comment": "\u30ad\u30fc/\u8ffd\u8de1\u756a\u53f7\u306f\u7167\u5408\u7528\u306e\u4e0d\u900f\u660e\u6587\u5b57\u5217\u3067\u3001\u6570\u5024\u6f14\u7b97\u5bfe\u8c61\u3067\u306f\u306a\u3044\u3002 Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "password": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 128,
                                        "title": "\u30d1\u30b9\u30ef\u30fc\u30c9\uff08\u5165\u529b\uff09",
                                        "description": "\u66f8\u304d\u8fbc\u307f\u5c02\u7528\uff08\u30cf\u30c3\u30b7\u30e5\u5316\u3057\u3066\u4fdd\u5b58\uff09 Fake\u89b3\u5bdf\u6587\u5b57\u9577 50\u301c63; \u89b3\u5bdf\u5024 '$2y$12$stXeC3GBw5uMLkgK/6Vb0.R7XLnwERRqWM/Hl7rtAhp4IcHoK8eWi', '$2y$10$deputyplaceholder.hash.never.verified.0123456789abcdef', '$2y$10$zyxwvutsrqponmlkjihgfedcbaZYXWVUTSRQPONMLKJIHGFEDCBA9876', '$2y$12$lbpzHVyv.ytzJju.4xk9Au5tPePdQe1WFH6sLWeWwcvIKbn0vMnE.', '$2y$10$shopownerplaceholder.hash.never.verified.0123456789ab', '$2y$10$abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123', '$2y$10$0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRS', '$2y$12$placeholder.hash.never.verified.never.0123456789abcde'\u3002",
                                        "example": "$2y$12$stXeC3GBw5uMLkgK/6Vb0.R7XLnwERRqWM/Hl7rtAhp4IcHoK8eWi",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    }
                                },
                                "required": [
                                    "resetKey",
                                    "password"
                                ]
                            }
                        }
                    },
                    "required": true
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/POST/resetResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/shopping": {
            "get": {
                "operationId": "goCheckoutEntry",
                "summary": "ALPS `goCheckoutEntry` / `goShopping` \u306b\u5bfe\u5fdc\u3059\u308b GET \u64cd\u4f5c\u3002",
                "parameters": [
                    {
                        "name": "sessionPrefix",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string"
                        },
                        "description": "\u30bb\u30c3\u30b7\u30e7\u30f3\u63a5\u982d\u8f9e\uff08\u5165\u529b\uff09 - \u8cfc\u5165\u30d5\u30ed\u30fc\u306e\u30ab\u30fc\u30c8\u30ad\u30fc\u3092\u69cb\u6210\u3059\u308b\u30bb\u30c3\u30b7\u30e7\u30f3\u30b9\u30b3\u30fc\u30d7\u306e\u63a5\u982d\u8f9e\u3002saleTypeId \u3068\u7d44\u307f\u5408\u308f\u305b\u3066\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306e\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 16\u301c23; \u89b3\u5bdf\u5024 'session-prefix-1', 'session-checkout-pilot5'\u3002",
                        "example": "session-prefix-1"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/shoppingResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/unsupported-route": {
            "get": {
                "summary": "Safe placeholder for template routes that are not backed by a resource yet.",
                "parameters": [
                    {
                        "name": "routeName",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string"
                        },
                        "description": "\u30da\u30fc\u30b8URL\uff08\u5165\u529b\uff09 - \u30da\u30fc\u30b8\u306eURL\u30d1\u30b9\uff08Symfony\u30eb\u30fc\u30c8\u540d\u3002\u4f8b: homepage, product_list\uff09"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/unsupported-routeResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            },
            "post": {
                "summary": "Safe placeholder for template routes that are not backed by a resource yet.",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "routeName": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 255,
                                        "title": "\u30da\u30fc\u30b8URL\uff08\u5165\u529b\uff09",
                                        "description": "\u30da\u30fc\u30b8\u306eURL\u30d1\u30b9\uff08Symfony\u30eb\u30fc\u30c8\u540d\u3002\u4f8b: homepage, product_list\uff09",
                                        "default": "",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "returnTo": {
                                        "title": "\u30da\u30fc\u30b8URL\uff08\u5165\u529b\uff09",
                                        "description": "\u30da\u30fc\u30b8\u306eURL\u30d1\u30b9\uff08Symfony\u30eb\u30fc\u30c8\u540d\u3002\u4f8b: homepage, product_list\uff09",
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 2048,
                                        "example": "/products",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    }
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/POST/unsupported-routeResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/admin/action-redirect": {
            "get": {
                "summary": "Safe admin endpoint for EC-CUBE routes that are represented by list-page\nJavaScript actions or by external-store operations in the original app.",
                "description": "The route is intentionally not a placeholder page: authenticated admins are\nredirected to a stable admin screen and the response copy contains no\nplaceholder marker, so route/link coverage can stay green while dedicated\ndomain transitions are added incrementally.",
                "parameters": [
                    {
                        "name": "returnTo",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string"
                        },
                        "description": "\u30da\u30fc\u30b8URL\uff08\u5165\u529b\uff09 - \u30da\u30fc\u30b8\u306eURL\u30d1\u30b9\uff08Symfony\u30eb\u30fc\u30c8\u540d\u3002\u4f8b: homepage, product_list\uff09",
                        "example": "/products"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/admin/action-redirectResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            },
            "post": {
                "summary": "Safe admin endpoint for EC-CUBE routes that are represented by list-page\nJavaScript actions or by external-store operations in the original app.",
                "description": "The route is intentionally not a placeholder page: authenticated admins are\nredirected to a stable admin screen and the response copy contains no\nplaceholder marker, so route/link coverage can stay green while dedicated\ndomain transitions are added incrementally.",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "returnTo": {
                                        "title": "\u30da\u30fc\u30b8URL\uff08\u5165\u529b\uff09",
                                        "description": "\u30da\u30fc\u30b8\u306eURL\u30d1\u30b9\uff08Symfony\u30eb\u30fc\u30c8\u540d\u3002\u4f8b: homepage, product_list\uff09",
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 2048,
                                        "example": "/products",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    }
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/POST/admin/action-redirectResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/admin/authority-role": {
            "get": {
                "operationId": "doUpdateAuthorityRole",
                "summary": "Phase 3 admin HTML Tier-2: render the authority-rule management\nscreen. The ALPS transition covers `doUpdateAuthorityRole`; EC-CUBE\nuses the same resource to edit URL-deny rules stored in\n`dtb_authority_role`.",
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/admin/authority-roleResponse"
                                }
                            }
                        }
                    }
                }
            },
            "post": {
                "operationId": "doUpdateAuthorityRole",
                "summary": "Wave 8: browser form input for URL deny rules. The primary HTML\nshape carries CSRF at the request boundary plus\n`AuthorityRoles[*][Authority]` / `AuthorityRoles[*][deny_url]`.",
                "description": "The legacy member role-flip shape (`loginId`, `authority`)\nremains supported for member workflow.",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "loginId": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "title": "\u30ed\u30b0\u30a4\u30f3ID\uff08\u5165\u529b\uff09",
                                        "description": "\u7ba1\u7406\u753b\u9762\u30ed\u30b0\u30a4\u30f3\u7528\u306eID\u3002\u4e00\u610f Fake\u89b3\u5bdf\u6587\u5b57\u9577 6\u301c13; \u89b3\u5bdf\u5024 'test-admin', 'shop-owner', 'deputy', 'deleted-admin', 'unknown-user'\u3002",
                                        "example": "test-admin",
                                        "minLength": 0,
                                        "maxLength": 128,
                                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002 Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "authority": {
                                        "type": [
                                            "integer",
                                            "null"
                                        ],
                                        "title": "\u6a29\u9650\uff08\u5165\u529b\uff09",
                                        "description": "\u7ba1\u7406\u8005\u6a29\u9650\u30ec\u30d9\u30eb\u30020=\u30b7\u30b9\u30c6\u30e0\u7ba1\u7406\u8005\uff08\u6700\u9ad8\u6a29\u9650\u3001\u5168\u6a5f\u80fd\u30a2\u30af\u30bb\u30b9\u53ef\u80fd\uff09, 1=\u5e97\u8217\u30aa\u30fc\u30ca\u30fc\uff08\u5236\u9650\u3042\u308a\u3001denyUrl\u3067\u5236\u9650\u3055\u308c\u305fURL\u306b\u30a2\u30af\u30bb\u30b9\u4e0d\u53ef\uff09\u3002\u6570\u5024\u304c\u5c0f\u3055\u3044\u307b\u3069\u6a29\u9650\u304c\u9ad8\u3044\u3002AuthorityRole\u306eURL\u62d2\u5426\u30d1\u30bf\u30fc\u30f3\u3067\u30a2\u30af\u30bb\u30b9\u5236\u5fa1 Fake\u89b3\u5bdf\u6570\u5024 0\u301c1; \u89b3\u5bdf\u5024 '1', '0'\u3002",
                                        "example": 1,
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "AuthorityRoles": {
                                        "type": [
                                            "array",
                                            "null"
                                        ],
                                        "title": "\u6a29\u9650\u30eb\u30fc\u30eb\u5165\u529b\u4e00\u89a7",
                                        "description": "\u6a29\u9650\u7ba1\u7406\u753b\u9762\u306eURL\u62d2\u5426\u30eb\u30fc\u30eb\u884c\u3002HTML form \u306e AuthorityRoles[*][Authority] / deny_url \u3092\u53d7\u3051\u53d6\u308b\u3002",
                                        "items": {
                                            "type": [
                                                "object",
                                                "null"
                                            ],
                                            "properties": {
                                                "Authority": {
                                                    "type": [
                                                        "integer",
                                                        "string",
                                                        "null"
                                                    ],
                                                    "title": "\u6a29\u9650"
                                                },
                                                "authority": {
                                                    "type": [
                                                        "integer",
                                                        "string",
                                                        "null"
                                                    ],
                                                    "title": "\u6a29\u9650"
                                                },
                                                "deny_url": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ],
                                                    "title": "\u62d2\u5426URL"
                                                },
                                                "denyUrl": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ],
                                                    "title": "\u62d2\u5426URL"
                                                }
                                            },
                                            "additionalProperties": true
                                        },
                                        "minItems": 0
                                    }
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/POST/admin/authority-roleResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/admin/base-info": {
            "get": {
                "operationId": "goBaseInfo",
                "summary": "Wave 9\u03b9: goBaseInfo \u2014 admin views the shop base info form data.",
                "description": "Setting/Shop Tier-2 also renders `shop_master.twig` from this body;\nthe `form` key carries an {@see \\AdminShopMasterForm} pre-filled\nwith the dtb_base_info row for the HTML editor.",
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/admin/base-infoResponse"
                                }
                            }
                        }
                    }
                }
            },
            "post": {
                "operationId": "doUpdateBaseInfo",
                "summary": "Wave 8: every shop-info field is admin-form input.",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "shopName": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 32,
                                        "title": "\u30b7\u30e7\u30c3\u30d7\u540d\uff08\u5165\u529b\uff09",
                                        "description": "\u30b7\u30e7\u30c3\u30d7\u306e\u8868\u793a\u540d\u3002\u30d5\u30ed\u30f3\u30c8\u753b\u9762\u306e\u30d8\u30c3\u30c0\u3084\u30e1\u30fc\u30eb\u306b\u8868\u793a Fake\u89b3\u5bdf\u6587\u5b57\u9577 12\u301c12; \u89b3\u5bdf\u5024 'EC-CUBE SHOP'\u3002",
                                        "example": "EC-CUBE SHOP",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "shopKana": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 32,
                                        "title": "\u30b7\u30e7\u30c3\u30d7\u540d\u30d5\u30ea\u30ac\u30ca\uff08\u5165\u529b\uff09",
                                        "description": "\u30b7\u30e7\u30c3\u30d7\u540d\u306e\u30ab\u30bf\u30ab\u30ca\u8aad\u307f Fake\u89b3\u5bdf\u6587\u5b57\u9577 12\u301c12; \u89b3\u5bdf\u5024 '\u30a4\u30fc\u30b7\u30fc\u30ad\u30e5\u30fc\u30d6\u30b7\u30e7\u30c3\u30d7'\u3002",
                                        "example": "\u30a4\u30fc\u30b7\u30fc\u30ad\u30e5\u30fc\u30d6\u30b7\u30e7\u30c3\u30d7",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "shopNameEng": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 32,
                                        "title": "\u30b7\u30e7\u30c3\u30d7\u540d\u82f1\u8a9e\uff08\u5165\u529b\uff09",
                                        "description": "\u30b7\u30e7\u30c3\u30d7\u306e\u82f1\u8a9e\u540d\u3002\u591a\u8a00\u8a9e\u5bfe\u5fdc\u3084\u30e1\u30fc\u30eb\u7f72\u540d\u7b49\u3067\u4f7f\u7528 Fake\u89b3\u5bdf\u6587\u5b57\u9577 12\u301c12; \u89b3\u5bdf\u5024 'EC-CUBE SHOP'\u3002",
                                        "example": "EC-CUBE SHOP",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "companyName": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 32,
                                        "title": "\u4f1a\u793e\u540d\uff08\u5165\u529b\uff09",
                                        "description": "\u6cd5\u4eba\u9867\u5ba2\u306e\u793e\u540d\u3002B2B\u53d6\u5f15\u3084\u30a4\u30f3\u30dc\u30a4\u30b9\u3067\u4f7f\u7528 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c11; \u89b3\u5bdf\u5024 'Acme Corp.', '\u682a\u5f0f\u4f1a\u793eEC-CUBE'; null 24/32\u3002",
                                        "example": "Acme Corp.",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "postalCode": {
                                        "title": "\u90f5\u4fbf\u756a\u53f7\uff08\u5165\u529b\uff09",
                                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u6709\u7121\u3092\u3069\u3061\u3089\u3082\u53d7\u3051\u5165\u308c\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 7\u301c8; \u89b3\u5bdf\u5024 '1500001', '1000005', '5300001', '530-0001'; null 18/33\u3002",
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "example": "1500001",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "pref": {
                                        "title": "\u90fd\u9053\u5e9c\u770c\uff08\u5165\u529b\uff09",
                                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u90fd\u9053\u5e9c\u770cID\u3002\u4f4f\u6240\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u72b6\u614b\u3067\u306f0\u3001\u78ba\u5b9a\u4f4f\u6240\u3067\u306f1\u301c47\u3092\u4f7f\u3046\u3002 Fake\u89b3\u5bdf\u6570\u5024 13\u301c27; \u89b3\u5bdf\u5024 '13', '27'; null 3/9\u3002",
                                        "type": [
                                            "integer",
                                            "null"
                                        ],
                                        "example": 13,
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "addr01": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 32,
                                        "title": "\u5e02\u533a\u753a\u6751\uff08\u5165\u529b\uff09",
                                        "description": "\u90fd\u9053\u5e9c\u770c\u3088\u308a\u4e0b\u4f4d\u306e\u5e02\u533a\u753a\u6751\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 3\u301c7; \u89b3\u5bdf\u5024 '\u6e0b\u8c37\u533a', '\u5343\u4ee3\u7530\u533a', '\u5927\u962a\u5e02\u5317\u533a', '\u5927\u962a\u5e02\u5317\u533a\u6885\u7530'; null 18/33\u3002",
                                        "example": "\u6e0b\u8c37\u533a",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "addr02": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 32,
                                        "title": "\u756a\u5730\u30fb\u5efa\u7269\u540d\uff08\u5165\u529b\uff09",
                                        "description": "\u756a\u5730\u30fb\u30d3\u30eb\u540d\u30fb\u90e8\u5c4b\u756a\u53f7\u7b49\u306e\u8a73\u7d30\u4f4f\u6240 Fake\u89b3\u5bdf\u6587\u5b57\u9577 5\u301c8; \u89b3\u5bdf\u5024 '\u795e\u5bae\u524d1-1-1', '\u4e38\u306e\u51852-2-2', '\u6885\u75301-1-1', '1-2-3'; null 18/33\u3002",
                                        "example": "\u795e\u5bae\u524d1-1-1",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "phoneNumber": {
                                        "title": "\u96fb\u8a71\u756a\u53f7\uff08\u5165\u529b\uff09",
                                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u3002Fake corpus\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3060\u304c\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3059\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c10; \u89b3\u5bdf\u5024 '0312345678', '0901234567', '0612345678'; null 18/33\u3002",
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 13,
                                        "example": "0312345678",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "businessHour": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 32,
                                        "title": "\u55b6\u696d\u6642\u9593\uff08\u5165\u529b\uff09",
                                        "description": "\u30b7\u30e7\u30c3\u30d7\u306e\u55b6\u696d\u6642\u9593\u3002\u30d5\u30ea\u30fc\u30d5\u30a9\u30fc\u30de\u30c3\u30c8 Fake\u89b3\u5bdf\u6587\u5b57\u9577 11\u301c11; \u89b3\u5bdf\u5024 '10:00-19:00'\u3002",
                                        "example": "10:00-19:00",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "shopEmail01": {
                                        "title": "\u9001\u4fe1\u5143/BCC \u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\uff08\u5165\u529b\uff09",
                                        "description": "\u307b\u307c\u5168\u30e1\u30fc\u30eb\u7a2e\u5225\u306e\u9001\u4fe1\u5143\uff08From\uff09\u517c\u30b7\u30e7\u30c3\u30d7\u63a7\u3048\uff08BCC\uff09\u30a2\u30c9\u30ec\u30b9\u3002\u6ce8\u6587\u78ba\u8a8d\u30fb\u4f1a\u54e1\u767b\u9332\u30fb\u30d1\u30b9\u30ef\u30fc\u30c9\u30ea\u30bb\u30c3\u30c8\u7b49\u3067\u4f7f\u7528 Fake\u89b3\u5bdf\u6587\u5b57\u9577 16\u301c16; \u89b3\u5bdf\u5024 'shop@example.com'\u3002",
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 254,
                                        "example": "shop@example.com",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "shopMessage": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 2000,
                                        "title": "\u30b7\u30e7\u30c3\u30d7\u30e1\u30c3\u30bb\u30fc\u30b8\uff08\u5165\u529b\uff09",
                                        "description": "\u300c\u5f53\u30b5\u30a4\u30c8\u306b\u3064\u3044\u3066\u300d\u30da\u30fc\u30b8\uff08Help/about.twig\uff09\u306b\u8868\u793a\u3059\u308b\u5e97\u8217\u304b\u3089\u306e\u30e1\u30c3\u30bb\u30fc\u30b8 Fake\u89b3\u5bdf\u6587\u5b57\u9577 20\u301c20; \u89b3\u5bdf\u5024 '\u3088\u3046\u3053\u305d\u3001EC-CUBE SHOP \u3078\u3002'\u3002",
                                        "example": "\u3088\u3046\u3053\u305d\u3001EC-CUBE SHOP \u3078\u3002",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    }
                                },
                                "required": [
                                    "shopName"
                                ]
                            }
                        }
                    },
                    "required": true
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/POST/admin/base-infoResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/admin/calendar": {
            "get": {
                "operationId": "goCalendar",
                "summary": "ALPS `goCalendar` \u306b\u5bfe\u5fdc\u3059\u308b GET \u64cd\u4f5c\u3002",
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/admin/calendarResponse"
                                }
                            }
                        }
                    }
                }
            },
            "post": {
                "operationId": "doUpdateCalendar",
                "summary": "EC-CUBE doUpdateCalendar / doCreateCalendarHoliday.",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "operation": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 64,
                                        "examples": [
                                            "add",
                                            "update",
                                            "delete"
                                        ],
                                        "title": "\u64cd\u4f5c\u7a2e\u5225\uff08\u5165\u529b\uff09",
                                        "description": "/admin/calendar \u306eunsafe\u64cd\u4f5c\u7d50\u679c\u3092\u8868\u3059\u64cd\u4f5c\u7a2e\u5225\u3002\u6210\u529f\u6642\u306e\u5dee\u5206\u3001\u51e6\u7406\u4ef6\u6570\u3001\u51aa\u7b49\u72b6\u614b\u3092\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u306b\u8fd4\u3059\u3002",
                                        "default": "update",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "title": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 255,
                                        "title": "\u51e6\u7406\u30bf\u30a4\u30c8\u30eb\uff08\u5165\u529b\uff09",
                                        "description": "/admin/calendar \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8868\u793a\u307e\u305f\u306f\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u63cf\u753b\u306b\u4f7f\u3046\u51e6\u7406\u30bf\u30a4\u30c8\u30eb\u3002\u540c\u540dproperty\u3067\u3082\u89aa\u6587\u8108 `root` \u306b\u3088\u3063\u3066\u610f\u5473\u3092\u5206\u3051\u308b\u3002",
                                        "default": "",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "holiday": {
                                        "type": [
                                            "string",
                                            "integer",
                                            "null"
                                        ],
                                        "title": "\u4f11\u65e5\u6307\u5b9a\uff08\u5165\u529b\uff09",
                                        "description": "/admin/calendar \u306e\u51e6\u7406\u6587\u8108\u304b\u3089\u6d3e\u751f\u3057\u305f\u4f11\u65e5\u6307\u5b9a\u3002ALPS\u57fa\u790e\u8a9e\u3060\u3051\u3067\u306f\u5358\u4f4d\u3084\u7528\u9014\u304c\u4e0d\u8db3\u3059\u308b\u305f\u3081\u3001\u3053\u306eResource\u4e0a\u306e\u610f\u5473\u3092\u660e\u793a\u3059\u308b\u3002",
                                        "default": "",
                                        "minLength": 0,
                                        "maxLength": 64,
                                        "$comment": "EC-CUBE\u4e92\u63db\u306e\u30d5\u30a9\u30fc\u30e0/\u4e00\u89a7\u5883\u754c\u3067\u6570\u5024\u3068\u6587\u5b57\u5217\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u3002\u696d\u52d9\u89e3\u91c8\u306fResource/Semantic\u5c64\u3067\u884c\u3046\u3002 Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "calendarId": {
                                        "type": [
                                            "string",
                                            "integer",
                                            "null"
                                        ],
                                        "title": "\u30ab\u30ec\u30f3\u30c0\u30fcID\uff08\u5165\u529b\uff09",
                                        "description": "/admin/calendar \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u5bfe\u8c61\u3092\u8b58\u5225\u3059\u308b\u30ab\u30ec\u30f3\u30c0\u30fcID\u3002DB\u63a1\u756aID\u3001Fake\u6587\u5b57\u5217ID\u3001\u4e92\u63db\u5883\u754cID\u306e\u3069\u308c\u306b\u8a72\u5f53\u3059\u308b\u304b\u3092schema\u306e\u578b\u3068\u30b3\u30e1\u30f3\u30c8\u3067\u5206\u3051\u308b\u3002",
                                        "minLength": 0,
                                        "maxLength": 128,
                                        "$comment": "\u30ab\u30ec\u30f3\u30c0\u30fcID\uff08\u5165\u529b\uff09\u306f\u696d\u52d9\u4e0aID\u3060\u304c\u3001HTTP\u30d5\u30a9\u30fc\u30e0\u3067\u306f\u6587\u5b57\u5217\u3068\u3057\u3066\u5c4a\u304f\u3002Resource/Semantic\u5c64\u306e\u691c\u8a3c\u3092\u901a\u3059\u305f\u3081transport schema\u3067\u306fstring|integer\u3092\u8a31\u5bb9\u3059\u308b\u3002 Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    }
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/POST/admin/calendarResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            },
            "delete": {
                "operationId": "doDeleteCalendarHoliday",
                "summary": "EC-CUBE doDeleteCalendarHoliday.",
                "parameters": [
                    {
                        "name": "calendarId",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string"
                        },
                        "description": "\u30ab\u30ec\u30f3\u30c0\u30fcID\uff08\u5165\u529b\uff09 - /admin/calendar \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u5bfe\u8c61\u3092\u8b58\u5225\u3059\u308b\u30ab\u30ec\u30f3\u30c0\u30fcID\u3002DB\u63a1\u756aID\u3001Fake\u6587\u5b57\u5217ID\u3001\u4e92\u63db\u5883\u754cID\u306e\u3069\u308c\u306b\u8a72\u5f53\u3059\u308b\u304b\u3092schema\u306e\u578b\u3068\u30b3\u30e1\u30f3\u30c8\u3067\u5206\u3051\u308b\u3002"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/DELETE/admin/calendarResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/admin/change-password": {
            "get": {
                "operationId": "doChangePassword",
                "summary": "Renders the admin password-change form.",
                "description": "Admin-only: returns 403 for an anonymous request \u2014 the same\nfirewall contract as the other admin pages, enforced at the\nresource layer (there is no Be Final to raise\n`UnauthorizedAdminAccessException`).",
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/admin/change-passwordResponse"
                                }
                            }
                        }
                    }
                }
            },
            "post": {
                "operationId": "doChangePassword",
                "summary": "Applies the admin's own password change (doChangePassword).",
                "description": "Failure mapping:\n- Invalid CSRF                         \u2192 403 (interceptor)\n- SemanticVariableException            \u2192 400\n- InvalidCurrentPasswordException      \u2192 400\n- PasswordConfirmationMismatchException\u2192 400\n- PasswordPolicyViolationException     \u2192 400\n- UnauthorizedAdminAccessException     \u2192 403 (no admin session)\n- AdminNotFoundException               \u2192 404 (stale session)",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "currentPassword": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 128,
                                        "title": "\u30d5\u30a9\u30fc\u30e0\u6587\u8108\u9805\u76ee\uff08\u5165\u529b\uff09",
                                        "description": "/admin/change-password \u306e\u30d5\u30a9\u30fc\u30e0\u6587\u8108\u3067\u4f7f\u3046\u30d5\u30a9\u30fc\u30e0\u6587\u8108\u9805\u76ee\u3002\u5165\u529b\u4fdd\u6301\u3001\u521d\u671f\u5024\u3001\u518d\u8868\u793a\u306b\u5fc5\u8981\u306a\u88dc\u52a9\u5024\u3002",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "changePasswordFirst": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 128,
                                        "title": "\u30d5\u30a9\u30fc\u30e0\u6587\u8108\u9805\u76ee\uff08\u5165\u529b\uff09",
                                        "description": "/admin/change-password \u306e\u30d5\u30a9\u30fc\u30e0\u6587\u8108\u3067\u4f7f\u3046\u30d5\u30a9\u30fc\u30e0\u6587\u8108\u9805\u76ee\u3002\u5165\u529b\u4fdd\u6301\u3001\u521d\u671f\u5024\u3001\u518d\u8868\u793a\u306b\u5fc5\u8981\u306a\u88dc\u52a9\u5024\u3002",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "changePasswordSecond": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 128,
                                        "title": "\u30d5\u30a9\u30fc\u30e0\u6587\u8108\u9805\u76ee\uff08\u5165\u529b\uff09",
                                        "description": "/admin/change-password \u306e\u30d5\u30a9\u30fc\u30e0\u6587\u8108\u3067\u4f7f\u3046\u30d5\u30a9\u30fc\u30e0\u6587\u8108\u9805\u76ee\u3002\u5165\u529b\u4fdd\u6301\u3001\u521d\u671f\u5024\u3001\u518d\u8868\u793a\u306b\u5fc5\u8981\u306a\u88dc\u52a9\u5024\u3002",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    }
                                },
                                "required": [
                                    "currentPassword",
                                    "changePasswordFirst",
                                    "changePasswordSecond"
                                ]
                            }
                        }
                    },
                    "required": true
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/POST/admin/change-passwordResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/admin/create-customer": {
            "post": {
                "operationId": "doCreateCustomer",
                "summary": "Wave 5: every form field is user-controlled input \u2014 same taint\ndiscipline as the front-end entry. The admin AUTHZ check lives\ninside the first Being (AdminCustomerCreating), so this method\ncan stay free of session lookups; we just map the exception.",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "email": {
                                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\uff08\u5165\u529b\uff09",
                                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u3002\u4f1a\u54e1\u767b\u9332\u30fb\u30ed\u30b0\u30a4\u30f3\u30fb\u901a\u77e5\u3067\u5171\u901a\u306b\u4f7f\u3046\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 15\u301c58; \u89b3\u5bdf\u5024 'bob@example.com', 'login-test@example.com', 'alice@example.com', 'carol@example.com', 'provisional@example.com', 'withdrawn-30000000aaaa3333bbbb4444cccc5555@example.invalid'\u3002",
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 254,
                                        "example": "alice@example.com",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "password": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 128,
                                        "title": "\u30d1\u30b9\u30ef\u30fc\u30c9\uff08\u5165\u529b\uff09",
                                        "description": "\u66f8\u304d\u8fbc\u307f\u5c02\u7528\uff08\u30cf\u30c3\u30b7\u30e5\u5316\u3057\u3066\u4fdd\u5b58\uff09 Fake\u89b3\u5bdf\u6587\u5b57\u9577 50\u301c63; \u89b3\u5bdf\u5024 '$2y$12$stXeC3GBw5uMLkgK/6Vb0.R7XLnwERRqWM/Hl7rtAhp4IcHoK8eWi', '$2y$10$deputyplaceholder.hash.never.verified.0123456789abcdef', '$2y$10$zyxwvutsrqponmlkjihgfedcbaZYXWVUTSRQPONMLKJIHGFEDCBA9876', '$2y$12$lbpzHVyv.ytzJju.4xk9Au5tPePdQe1WFH6sLWeWwcvIKbn0vMnE.', '$2y$10$shopownerplaceholder.hash.never.verified.0123456789ab', '$2y$10$abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123', '$2y$10$0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRS', '$2y$12$placeholder.hash.never.verified.never.0123456789abcde'\u3002",
                                        "example": "$2y$12$stXeC3GBw5uMLkgK/6Vb0.R7XLnwERRqWM/Hl7rtAhp4IcHoK8eWi",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "name01": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 80,
                                        "title": "\u59d3\uff08\u5165\u529b\uff09",
                                        "description": "\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u30fb\u304a\u554f\u3044\u5408\u308f\u305b\u3067\u5171\u901a\u4f7f\u7528\u3055\u308c\u308b\u59d3 Fake\u89b3\u5bdf\u6587\u5b57\u9577 2\u301c2; \u89b3\u5bdf\u5024 '\u9234\u6728', '\u5c71\u7530', '\u4f50\u85e4', '\u9ad8\u6a4b', '\u9000\u4f1a'\u3002",
                                        "example": "\u9234\u6728",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "name02": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 80,
                                        "title": "\u540d\uff08\u5165\u529b\uff09",
                                        "description": "\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u30fb\u304a\u554f\u3044\u5408\u308f\u305b\u3067\u5171\u901a\u4f7f\u7528\u3055\u308c\u308b\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 1\u301c3; \u89b3\u5bdf\u5024 '\u30a2\u30ea\u30b9', '\u592a\u90ce', '\u6b21\u90ce', '\u82b1\u5b50', '\u4e09\u90ce', '\u6e08'\u3002",
                                        "example": "\u30a2\u30ea\u30b9",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "kana01": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 32,
                                        "title": "\u30bb\u30a4\uff08\u5165\u529b\uff09",
                                        "description": "\u59d3\u306e\u30ab\u30bf\u30ab\u30ca\u8aad\u307f\u3002\u5168\u89d2\u30ab\u30bf\u30ab\u30ca\u306e\u307f\u8a31\u53ef\uff08\u3072\u3089\u304c\u306a\u5165\u529b\u6642\u306f\u81ea\u52d5\u5909\u63db\uff09\u3002\u65e5\u672c\u306e\u6c0f\u540d\u5165\u529b\u306b\u7279\u6709\u306e\u8aad\u307f\u4eee\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 3\u301c3; \u89b3\u5bdf\u5024 '\u30e4\u30de\u30c0', '\u30b5\u30c8\u30a6'; null 18/31\u3002",
                                        "example": "\u30e4\u30de\u30c0",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "kana02": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 32,
                                        "title": "\u30e1\u30a4\uff08\u5165\u529b\uff09",
                                        "description": "\u540d\u306e\u30ab\u30bf\u30ab\u30ca\u8aad\u307f\u3002\u5168\u89d2\u30ab\u30bf\u30ab\u30ca\u306e\u307f\u8a31\u53ef\uff08\u3072\u3089\u304c\u306a\u5165\u529b\u6642\u306f\u81ea\u52d5\u5909\u63db\uff09\u3002\u65e5\u672c\u306e\u6c0f\u540d\u5165\u529b\u306b\u7279\u6709\u306e\u8aad\u307f\u4eee\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 3\u301c3; \u89b3\u5bdf\u5024 '\u30a2\u30ea\u30b9', '\u30cf\u30ca\u30b3', '\u30bf\u30ed\u30a6'; null 18/31\u3002",
                                        "example": "\u30a2\u30ea\u30b9",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "companyName": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 32,
                                        "title": "\u4f1a\u793e\u540d\uff08\u5165\u529b\uff09",
                                        "description": "\u6cd5\u4eba\u9867\u5ba2\u306e\u793e\u540d\u3002B2B\u53d6\u5f15\u3084\u30a4\u30f3\u30dc\u30a4\u30b9\u3067\u4f7f\u7528 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c11; \u89b3\u5bdf\u5024 'Acme Corp.', '\u682a\u5f0f\u4f1a\u793eEC-CUBE'; null 24/32\u3002",
                                        "example": "Acme Corp.",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "phoneNumber": {
                                        "title": "\u96fb\u8a71\u756a\u53f7\uff08\u5165\u529b\uff09",
                                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u3002Fake corpus\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3060\u304c\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3059\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c10; \u89b3\u5bdf\u5024 '0312345678', '0901234567', '0612345678'; null 18/33\u3002",
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 13,
                                        "example": "0312345678",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "postalCode": {
                                        "title": "\u90f5\u4fbf\u756a\u53f7\uff08\u5165\u529b\uff09",
                                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u6709\u7121\u3092\u3069\u3061\u3089\u3082\u53d7\u3051\u5165\u308c\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 7\u301c8; \u89b3\u5bdf\u5024 '1500001', '1000005', '5300001', '530-0001'; null 18/33\u3002",
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "example": "1500001",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "pref": {
                                        "title": "\u90fd\u9053\u5e9c\u770c\uff08\u5165\u529b\uff09",
                                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u90fd\u9053\u5e9c\u770cID\u3002\u4f4f\u6240\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u72b6\u614b\u3067\u306f0\u3001\u78ba\u5b9a\u4f4f\u6240\u3067\u306f1\u301c47\u3092\u4f7f\u3046\u3002 Fake\u89b3\u5bdf\u6570\u5024 13\u301c27; \u89b3\u5bdf\u5024 '13', '27'; null 3/9\u3002",
                                        "type": [
                                            "integer",
                                            "null"
                                        ],
                                        "example": 13,
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "addr01": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 32,
                                        "title": "\u5e02\u533a\u753a\u6751\uff08\u5165\u529b\uff09",
                                        "description": "\u90fd\u9053\u5e9c\u770c\u3088\u308a\u4e0b\u4f4d\u306e\u5e02\u533a\u753a\u6751\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 3\u301c7; \u89b3\u5bdf\u5024 '\u6e0b\u8c37\u533a', '\u5343\u4ee3\u7530\u533a', '\u5927\u962a\u5e02\u5317\u533a', '\u5927\u962a\u5e02\u5317\u533a\u6885\u7530'; null 18/33\u3002",
                                        "example": "\u6e0b\u8c37\u533a",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "addr02": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 32,
                                        "title": "\u756a\u5730\u30fb\u5efa\u7269\u540d\uff08\u5165\u529b\uff09",
                                        "description": "\u756a\u5730\u30fb\u30d3\u30eb\u540d\u30fb\u90e8\u5c4b\u756a\u53f7\u7b49\u306e\u8a73\u7d30\u4f4f\u6240 Fake\u89b3\u5bdf\u6587\u5b57\u9577 5\u301c8; \u89b3\u5bdf\u5024 '\u795e\u5bae\u524d1-1-1', '\u4e38\u306e\u51852-2-2', '\u6885\u75301-1-1', '1-2-3'; null 18/33\u3002",
                                        "example": "\u795e\u5bae\u524d1-1-1",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "birth": {
                                        "title": "\u751f\u5e74\u6708\u65e5\uff08\u5165\u529b\uff09",
                                        "description": "\u4f1a\u54e1\u306e\u751f\u5e74\u6708\u65e5 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c10; \u89b3\u5bdf\u5024 '1990-04-01', '1985-12-15'; null 18/28\u3002",
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "example": "1990-04-01",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "sex": {
                                        "type": [
                                            "integer",
                                            "null"
                                        ],
                                        "title": "\u6027\u5225\uff08\u5165\u529b\uff09",
                                        "description": "1=\u7537\u6027, 2=\u5973\u6027, 3=\u305d\u306e\u4ed6, 4=\u56de\u7b54\u3057\u306a\u3044 Fake\u89b3\u5bdf\u6570\u5024 2\u301c2; \u89b3\u5bdf\u5024 '2'; null 3/5\u3002",
                                        "example": 2,
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "job": {
                                        "type": [
                                            "integer",
                                            "null"
                                        ],
                                        "title": "\u8077\u696d\uff08\u5165\u529b\uff09",
                                        "description": "1=\u516c\u52d9\u54e1\u301c18=\u305d\u306e\u4ed6\u306e18\u533a\u5206 Fake\u89b3\u5bdf\u6570\u5024 7\u301c18; \u89b3\u5bdf\u5024 '7', '18'; null 3/5\u3002",
                                        "example": 7,
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    }
                                },
                                "required": [
                                    "email",
                                    "password",
                                    "name01",
                                    "name02"
                                ]
                            }
                        }
                    },
                    "required": true
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/POST/admin/create-customerResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/admin/csv-config": {
            "get": {
                "operationId": "doUpdateCsv",
                "summary": "EC-CUBE CSV\u51fa\u529b\u9805\u76ee\u8a2d\u5b9a \u2014 Setting/Shop Tier-2.",
                "description": "Thin GET renderer for `Setting/Shop/csv.twig`. The existing POST\npersists a submitted vector; this GET serves the editor body.",
                "parameters": [
                    {
                        "name": "csvType",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        },
                        "description": "CSV\u7a2e\u5225\uff08\u5165\u529b\uff09 - CSV\u51fa\u529b\u9805\u76ee\u8a2d\u5b9a\u3067\u7de8\u96c6\u5bfe\u8c61\u306b\u3059\u308bCSV\u7a2e\u5225\u30021=\u5546\u54c1CSV, 2=\u4f1a\u54e1CSV, 3=\u53d7\u6ce8CSV, 4=\u914d\u9001CSV\u3002HTTP query\u3067\u306f\u6587\u5b57\u5217\u3068\u3057\u3066\u5c4a\u304f\u5834\u5408\u304c\u3042\u308b\u305f\u3081transport schema\u3067\u306fstring|integer|null\u3092\u8a31\u5bb9\u3057\u3001\u610f\u5473\u691c\u8a3c\u306fResource/Semantic\u5c64\u3078\u59d4\u306d\u308b\u3002"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/admin/csv-configResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            },
            "post": {
                "operationId": "doUpdateCsv",
                "summary": "Wave 9: admin-form input. The columns list is sanitized by Be /\nSemantic; the column entries themselves carry user-supplied\ncolumn names so the taint mark applies to the whole payload.",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "csvType": {
                                        "type": [
                                            "integer",
                                            "null"
                                        ],
                                        "title": "CSV\u7a2e\u5225\uff08\u5165\u529b\uff09",
                                        "description": "dtb_csv.csv_type_id \u2014 mtb_csv_type \u3078\u306e FK\uff081=\u5546\u54c1CSV, 2=\u4f1a\u54e1CSV, 3=\u53d7\u6ce8CSV, 4=\u51fa\u8377CSV\uff09\u30021\u3064\u306e csvType \u304c\u8907\u6570\u306e\u5217\u8a2d\u5b9a\u884c\uff08dtb_csv \u884c\uff09\u3092\u6240\u6709\u3059\u308b\u3002doUpdateCsv \u306f1\u3064\u306e csvType \u306e\u5217\u30d9\u30af\u30bf\u5168\u4f53\u3092\u4e00\u62ec POST \u3057\u3001SqlCsvColumnConfigStorage::replaceType \u304c\u305d\u306e csvType \u306e\u884c\u96c6\u5408\u3092\u30a2\u30c8\u30df\u30c3\u30af\u306b\u7f6e\u63db\u3059\u308b\u3002mtb_csv_type \u306f structure-only \u30c0\u30f3\u30d7\u3067\u7a7a\u306e\u305f\u3081 SQL \u30c6\u30b9\u30c8\u306f seedCsvTypes \u3067\u30b7\u30fc\u30c9\uff08seedAdminMasters \u3068\u540c\u3058\u7a7a\u30de\u30b9\u30bf FK \u30b7\u30fc\u30c9\u898f\u7d04\uff09",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "columns": {
                                        "type": [
                                            "array",
                                            "null"
                                        ],
                                        "title": "CSV\u5217\u5b9a\u7fa9",
                                        "description": "/admin/csv-config \u306eCSV\u5217\u8a2d\u5b9a\u3002\u5404\u8981\u7d20\u306f\u51fa\u529b\u5bfe\u8c61\u30d5\u30a3\u30fc\u30eb\u30c9\u3068\u8868\u793a\u540d\u3092\u8868\u3059\u3002",
                                        "items": {
                                            "type": "object",
                                            "title": "CSV\u5217\uff08\u5165\u529b\uff09",
                                            "description": "/admin/csv-config \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308bCSV\u5217\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `columns` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002",
                                            "properties": {
                                                "columnName": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ],
                                                    "minLength": 0,
                                                    "maxLength": 255,
                                                    "title": "CSV\u5217\u540d\uff08\u5165\u529b\uff09",
                                                    "description": "doUpdateCsv \u304c\u4fdd\u5b58\u3059\u308bCSV\u5217\u306e\u5185\u90e8\u540d\u3002HTML\u30d5\u30a9\u30fc\u30e0\u3067\u306f columns[n][columnName] \u3068\u3057\u3066\u9001\u4fe1\u3055\u308c\u308b\u3002",
                                                    "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                                },
                                                "name": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ],
                                                    "minLength": 0,
                                                    "maxLength": 32,
                                                    "title": "\u51e6\u7406\u8868\u793a\u540d\uff08\u5165\u529b\uff09",
                                                    "description": "Fake\u89b3\u5bdf\u6587\u5b57\u9577 1\u301c7; \u89b3\u5bdf\u5024 '\u30c6\u30b9\u30c8\u7ba1\u7406\u8005', '\u526f\u7ba1\u7406\u8005', '\u5e97\u8217\u30aa\u30fc\u30ca\u30fc', '\u524a\u9664\u6e08\u307f\u7ba1\u7406\u8005', 'Red', 'Blue', 'S', 'Color'\u3002",
                                                    "example": "\u30c6\u30b9\u30c8\u7ba1\u7406\u8005",
                                                    "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                                },
                                                "label": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ],
                                                    "minLength": 0,
                                                    "maxLength": 255,
                                                    "title": "\u8868\u793a\u30e9\u30d9\u30eb\uff08\u5165\u529b\uff09",
                                                    "description": "/admin/csv-config \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8868\u793a\u307e\u305f\u306f\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u63cf\u753b\u306b\u4f7f\u3046\u8868\u793a\u30e9\u30d9\u30eb\u3002\u540c\u540dproperty\u3067\u3082\u89aa\u6587\u8108 `root` \u306b\u3088\u3063\u3066\u610f\u5473\u3092\u5206\u3051\u308b\u3002",
                                                    "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                                },
                                                "value": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ],
                                                    "minLength": 0,
                                                    "maxLength": 255,
                                                    "title": "\u8868\u793a\u5024",
                                                    "description": "/admin/csv-config \u306e\u5165\u529b\u3067\u8868\u793a\u307e\u305f\u306f\u9078\u629e\u80a2\u3068\u3057\u3066\u4f7f\u3046\u5024\u3002\u89aa\u30b3\u30f3\u30c6\u30ad\u30b9\u30c8 `columnsItem` \u306b\u5c5e\u3059\u308b\u3002",
                                                    "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                                },
                                                "enabled": {
                                                    "type": [
                                                        "boolean",
                                                        "integer",
                                                        "string",
                                                        "null"
                                                    ],
                                                    "title": "\u51e6\u7406\u72b6\u614b\u30d5\u30e9\u30b0\uff08\u5165\u529b\uff09",
                                                    "description": "\u89b3\u5bdf\u5024 'true', 'false'\u3002",
                                                    "example": "true",
                                                    "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                                },
                                                "sortNo": {
                                                    "type": [
                                                        "integer",
                                                        "string",
                                                        "null"
                                                    ],
                                                    "title": "CSV\u5217\u9806\uff08\u5165\u529b\uff09",
                                                    "description": "doUpdateCsv \u306e\u5217\u9806\u3002HTML\u30d5\u30a9\u30fc\u30e0\u3067\u306f\u6587\u5b57\u5217\u3068\u3057\u3066\u9001\u4fe1\u3055\u308c\u308b\u3002",
                                                    "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                                }
                                            },
                                            "$comment": "\u914d\u5217\u8981\u7d20\u306f\u30de\u30b9\u30bf/CSV/option map\u306e\u52d5\u7684\u884c\u3067\u3042\u308a\u3001\u5217\u96c6\u5408\u304c\u5bfe\u8c61\u7a2e\u5225\u306b\u3088\u308a\u5909\u308f\u308b\u305f\u3081\u56fa\u5b9ashape\u5316\u3057\u306a\u3044\u3002\u65e2\u77e5property\u306f\u5951\u7d04\u3057\u3001\u8ffd\u52a0\u5217\u306f\u8a72\u5f53\u30b5\u30fc\u30d3\u30b9\u5883\u754c\u3067\u6271\u3046\u3002 Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                        },
                                        "minItems": 0,
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "csvOutput": {
                                        "type": [
                                            "array",
                                            "string",
                                            "null"
                                        ],
                                        "title": "CSV\u51fa\u529b\u5bfe\u8c61\u5217\uff08HTML\u5165\u529b\uff09",
                                        "description": "CSV\u8a2d\u5b9a\u753b\u9762\u306e multi-select `csvOutput[]` \u304c\u9001\u308b\u51fa\u529b\u5bfe\u8c61\u5217\u3002JavaScript \u304c\u751f\u6210\u3059\u308b columns[n] \u3068\u540c\u3058\u5217\u30d9\u30af\u30bf\u3078 Resource \u5883\u754c\u3067\u6b63\u898f\u5316\u3055\u308c\u308b\u3002",
                                        "items": {
                                            "type": [
                                                "string",
                                                "null"
                                            ],
                                            "minLength": 0,
                                            "maxLength": 255
                                        },
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "csvNotOutput": {
                                        "type": [
                                            "array",
                                            "string",
                                            "null"
                                        ],
                                        "title": "CSV\u975e\u51fa\u529b\u5bfe\u8c61\u5217\uff08HTML\u5165\u529b\uff09",
                                        "description": "CSV\u8a2d\u5b9a\u753b\u9762\u306e multi-select `csvNotOutput[]` \u304c\u9001\u308b\u975e\u51fa\u529b\u5bfe\u8c61\u5217\u3002JavaScript \u304c\u751f\u6210\u3059\u308b columns[n] \u3068\u540c\u3058\u5217\u30d9\u30af\u30bf\u3078 Resource \u5883\u754c\u3067\u6b63\u898f\u5316\u3055\u308c\u308b\u3002",
                                        "items": {
                                            "type": [
                                                "string",
                                                "null"
                                            ],
                                            "minLength": 0,
                                            "maxLength": 255
                                        },
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    }
                                },
                                "required": [
                                    "csvType"
                                ]
                            }
                        }
                    },
                    "required": true
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/POST/admin/csv-configResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/admin/customer": {
            "get": {
                "operationId": "goCustomer",
                "summary": "Wave 5: the email comes from the admin UI (typed input or query\nstring), so it is user-controlled \u2014 same taint discipline as the\ncustomer-side LoginResource.",
                "parameters": [
                    {
                        "name": "email",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string"
                        },
                        "description": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\uff08\u5165\u529b\uff09 - \u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u3002\u4f1a\u54e1\u767b\u9332\u30fb\u30ed\u30b0\u30a4\u30f3\u30fb\u901a\u77e5\u3067\u5171\u901a\u306b\u4f7f\u3046\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 15\u301c58; \u89b3\u5bdf\u5024 'bob@example.com', 'login-test@example.com', 'alice@example.com', 'carol@example.com', 'provisional@example.com', 'withdrawn-30000000aaaa3333bbbb4444cccc5555@example.invalid'\u3002",
                        "example": "alice@example.com"
                    },
                    {
                        "name": "customerId",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string"
                        },
                        "description": "\u4f1a\u54e1ID\uff08\u5165\u529b\uff09 - dtb_customer.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e Entity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\uff08\u30de\u30b9\u30a2\u30b5\u30a4\u30f3\u30e1\u30f3\u30c8\u9632\u6b62\u306e\u305f\u3081\u3001Session/AuthZ \u7d4c\u7531\u3067\u8aad\u307f\u51fa\u3057\u3001\u30ea\u30af\u30a8\u30b9\u30c8\u672c\u6587\u304b\u3089\u306f\u53d7\u3051\u53d6\u3089\u306a\u3044\uff09\u3002Favorite / Cart / Order \u306e\u6240\u6709\u8005\u30ad\u30fc\u3068\u3057\u3066\u6a2a\u65ad\u4f7f\u7528 Fake\u89b3\u5bdf\u6587\u5b57\u9577 12\u301c32; \u89b3\u5bdf\u5024 'customer-001', '0123456789abcdef0123456789abcdef', 'customer-002', 'favorite-list-customer', 'favorite-html-customer', 'fedcba9876543210fedcba9876543210', 'aaaaaaaa00000000bbbbbbbb11111111', '10000000aaaa1111bbbb2222cccc3333'\u3002",
                        "example": "customer-001"
                    },
                    {
                        "name": "id",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string"
                        },
                        "description": "ID\uff08\u5165\u529b\uff09 - Fake\u89b3\u5bdf\u6587\u5b57\u9577 13\u301c32; \u89b3\u5bdf\u5024 'ad000000000000000000000000000001', 'ad000000000000000000000000000003', 'fedcba9876543210fedcba9876543210', '10000000aaaa1111bbbb2222cccc3333', 'ad000000000000000000000000000002', '0123456789abcdef0123456789abcdef', 'aaaaaaaa00000000bbbbbbbb11111111', '20000000dddd2222eeee3333ffff4444'\u3002",
                        "example": "ad000000000000000000000000000001"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/admin/customerResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            },
            "post": {
                "operationId": "doUpdateCustomerProfile",
                "summary": "EC-CUBE doUpdateCustomerProfile \u2014 \u4f1a\u54e1\u60c5\u5831\u3092\u66f4\u65b0\u3059\u308b\uff08\u7ba1\u7406\u753b\u9762\uff09.",
                "description": "Admin-side edit of an EXISTING customer. The `customerId` comes\nfrom the form (the admin_customer_edit `{id}`) \u2014 a foreign id \u2014\nso the admin AUTHZ check lives inside the first Being\n(AdminCustomerUpdating, which throws before the load). This method\nstays free of session lookups and just maps the exceptions.\n\nFailure mapping (matching the onGet ladder + the create sibling):\n  - SemanticVariableException          \u2192 400 (email/name format)\n  - UnauthorizedAdminAccessException   \u2192 403 (no admin session)\n  - CustomerNotFoundException          \u2192 404 (unknown customerId)\n  - EmailAlreadyRegisteredException    \u2192 409 (email already taken)\n\nOn success: 200 with a `Location` header pointing back at the\nadmin Customer detail URL keyed by the opaque customerId\n(POST-redirect-GET) \u2014 never by email, so no PII enters the URL.",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "customerId": {
                                        "title": "\u4f1a\u54e1ID\uff08\u5165\u529b\uff09",
                                        "description": "\u7de8\u96c6\u5bfe\u8c61\u4f1a\u54e1\u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\uff08admin_customer_edit \u306e {id}\uff09\u3002\u7ba1\u7406\u753b\u9762\u306e\u30d5\u30a9\u30fc\u30e0\u304b\u3089\u4f9b\u7d66\u3055\u308c\u3001\u7ba1\u7406\u30d5\u30a1\u30a4\u30a2\u30a6\u30a9\u30fc\u30eb\u8d8a\u3057\u306b\u306e\u307f\u4f7f\u7528\u3055\u308c\u308b\u3002",
                                        "type": "string",
                                        "minLength": 1,
                                        "maxLength": 128,
                                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                                        "example": "0123456789abcdef0123456789abcdef",
                                        "$comment": "Admin-supplied target id; gated by the admin firewall in the downstream Being."
                                    },
                                    "email": {
                                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\uff08\u5165\u529b\uff09",
                                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u3002\u4f1a\u54e1\u767b\u9332\u30fb\u30ed\u30b0\u30a4\u30f3\u30fb\u901a\u77e5\u3067\u5171\u901a\u306b\u4f7f\u3046\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 15\u301c58; \u89b3\u5bdf\u5024 'bob@example.com', 'login-test@example.com', 'alice@example.com', 'carol@example.com', 'provisional@example.com', 'withdrawn-30000000aaaa3333bbbb4444cccc5555@example.invalid'\u3002",
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 254,
                                        "example": "alice@example.com",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "name01": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 80,
                                        "title": "\u59d3\uff08\u5165\u529b\uff09",
                                        "description": "\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u30fb\u304a\u554f\u3044\u5408\u308f\u305b\u3067\u5171\u901a\u4f7f\u7528\u3055\u308c\u308b\u59d3 Fake\u89b3\u5bdf\u6587\u5b57\u9577 2\u301c2; \u89b3\u5bdf\u5024 '\u9234\u6728', '\u5c71\u7530', '\u4f50\u85e4', '\u9ad8\u6a4b', '\u9000\u4f1a'\u3002",
                                        "example": "\u9234\u6728",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "name02": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 80,
                                        "title": "\u540d\uff08\u5165\u529b\uff09",
                                        "description": "\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u30fb\u304a\u554f\u3044\u5408\u308f\u305b\u3067\u5171\u901a\u4f7f\u7528\u3055\u308c\u308b\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 1\u301c3; \u89b3\u5bdf\u5024 '\u30a2\u30ea\u30b9', '\u592a\u90ce', '\u6b21\u90ce', '\u82b1\u5b50', '\u4e09\u90ce', '\u6e08'\u3002",
                                        "example": "\u30a2\u30ea\u30b9",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "kana01": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 32,
                                        "title": "\u30bb\u30a4\uff08\u5165\u529b\uff09",
                                        "description": "\u59d3\u306e\u30ab\u30bf\u30ab\u30ca\u8aad\u307f\u3002\u5168\u89d2\u30ab\u30bf\u30ab\u30ca\u306e\u307f\u8a31\u53ef\uff08\u3072\u3089\u304c\u306a\u5165\u529b\u6642\u306f\u81ea\u52d5\u5909\u63db\uff09\u3002\u65e5\u672c\u306e\u6c0f\u540d\u5165\u529b\u306b\u7279\u6709\u306e\u8aad\u307f\u4eee\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 3\u301c3; \u89b3\u5bdf\u5024 '\u30e4\u30de\u30c0', '\u30b5\u30c8\u30a6'; null 18/31\u3002",
                                        "example": "\u30e4\u30de\u30c0",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "kana02": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 32,
                                        "title": "\u30e1\u30a4\uff08\u5165\u529b\uff09",
                                        "description": "\u540d\u306e\u30ab\u30bf\u30ab\u30ca\u8aad\u307f\u3002\u5168\u89d2\u30ab\u30bf\u30ab\u30ca\u306e\u307f\u8a31\u53ef\uff08\u3072\u3089\u304c\u306a\u5165\u529b\u6642\u306f\u81ea\u52d5\u5909\u63db\uff09\u3002\u65e5\u672c\u306e\u6c0f\u540d\u5165\u529b\u306b\u7279\u6709\u306e\u8aad\u307f\u4eee\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 3\u301c3; \u89b3\u5bdf\u5024 '\u30a2\u30ea\u30b9', '\u30cf\u30ca\u30b3', '\u30bf\u30ed\u30a6'; null 18/31\u3002",
                                        "example": "\u30a2\u30ea\u30b9",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "companyName": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 32,
                                        "title": "\u4f1a\u793e\u540d\uff08\u5165\u529b\uff09",
                                        "description": "\u6cd5\u4eba\u9867\u5ba2\u306e\u793e\u540d\u3002B2B\u53d6\u5f15\u3084\u30a4\u30f3\u30dc\u30a4\u30b9\u3067\u4f7f\u7528 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c11; \u89b3\u5bdf\u5024 'Acme Corp.', '\u682a\u5f0f\u4f1a\u793eEC-CUBE'; null 24/32\u3002",
                                        "example": "Acme Corp.",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "phoneNumber": {
                                        "title": "\u96fb\u8a71\u756a\u53f7\uff08\u5165\u529b\uff09",
                                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u3002Fake corpus\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3060\u304c\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3059\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c10; \u89b3\u5bdf\u5024 '0312345678', '0901234567', '0612345678'; null 18/33\u3002",
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 13,
                                        "example": "0312345678",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "postalCode": {
                                        "title": "\u90f5\u4fbf\u756a\u53f7\uff08\u5165\u529b\uff09",
                                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u6709\u7121\u3092\u3069\u3061\u3089\u3082\u53d7\u3051\u5165\u308c\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 7\u301c8; \u89b3\u5bdf\u5024 '1500001', '1000005', '5300001', '530-0001'; null 18/33\u3002",
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "example": "1500001",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "pref": {
                                        "title": "\u90fd\u9053\u5e9c\u770c\uff08\u5165\u529b\uff09",
                                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u90fd\u9053\u5e9c\u770cID\u3002\u4f4f\u6240\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u72b6\u614b\u3067\u306f0\u3001\u78ba\u5b9a\u4f4f\u6240\u3067\u306f1\u301c47\u3092\u4f7f\u3046\u3002 Fake\u89b3\u5bdf\u6570\u5024 13\u301c27; \u89b3\u5bdf\u5024 '13', '27'; null 3/9\u3002",
                                        "type": [
                                            "integer",
                                            "null"
                                        ],
                                        "example": 13,
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "addr01": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 32,
                                        "title": "\u5e02\u533a\u753a\u6751\uff08\u5165\u529b\uff09",
                                        "description": "\u90fd\u9053\u5e9c\u770c\u3088\u308a\u4e0b\u4f4d\u306e\u5e02\u533a\u753a\u6751\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 3\u301c7; \u89b3\u5bdf\u5024 '\u6e0b\u8c37\u533a', '\u5343\u4ee3\u7530\u533a', '\u5927\u962a\u5e02\u5317\u533a', '\u5927\u962a\u5e02\u5317\u533a\u6885\u7530'; null 18/33\u3002",
                                        "example": "\u6e0b\u8c37\u533a",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "addr02": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 32,
                                        "title": "\u756a\u5730\u30fb\u5efa\u7269\u540d\uff08\u5165\u529b\uff09",
                                        "description": "\u756a\u5730\u30fb\u30d3\u30eb\u540d\u30fb\u90e8\u5c4b\u756a\u53f7\u7b49\u306e\u8a73\u7d30\u4f4f\u6240 Fake\u89b3\u5bdf\u6587\u5b57\u9577 5\u301c8; \u89b3\u5bdf\u5024 '\u795e\u5bae\u524d1-1-1', '\u4e38\u306e\u51852-2-2', '\u6885\u75301-1-1', '1-2-3'; null 18/33\u3002",
                                        "example": "\u795e\u5bae\u524d1-1-1",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "birth": {
                                        "title": "\u751f\u5e74\u6708\u65e5\uff08\u5165\u529b\uff09",
                                        "description": "\u4f1a\u54e1\u306e\u751f\u5e74\u6708\u65e5 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c10; \u89b3\u5bdf\u5024 '1990-04-01', '1985-12-15'; null 18/28\u3002",
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "example": "1990-04-01",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "sex": {
                                        "type": [
                                            "integer",
                                            "null"
                                        ],
                                        "title": "\u6027\u5225\uff08\u5165\u529b\uff09",
                                        "description": "1=\u7537\u6027, 2=\u5973\u6027, 3=\u305d\u306e\u4ed6, 4=\u56de\u7b54\u3057\u306a\u3044 Fake\u89b3\u5bdf\u6570\u5024 2\u301c2; \u89b3\u5bdf\u5024 '2'; null 3/5\u3002",
                                        "example": 2,
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "job": {
                                        "type": [
                                            "integer",
                                            "null"
                                        ],
                                        "title": "\u8077\u696d\uff08\u5165\u529b\uff09",
                                        "description": "1=\u516c\u52d9\u54e1\u301c18=\u305d\u306e\u4ed6\u306e18\u533a\u5206 Fake\u89b3\u5bdf\u6570\u5024 7\u301c18; \u89b3\u5bdf\u5024 '7', '18'; null 3/5\u3002",
                                        "example": 7,
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "password": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 128,
                                        "title": "\u30d1\u30b9\u30ef\u30fc\u30c9\uff08\u5165\u529b\uff09",
                                        "description": "\u66f8\u304d\u8fbc\u307f\u5c02\u7528\uff08\u30cf\u30c3\u30b7\u30e5\u5316\u3057\u3066\u4fdd\u5b58\uff09 Fake\u89b3\u5bdf\u6587\u5b57\u9577 50\u301c63; \u89b3\u5bdf\u5024 '$2y$12$stXeC3GBw5uMLkgK/6Vb0.R7XLnwERRqWM/Hl7rtAhp4IcHoK8eWi', '$2y$10$deputyplaceholder.hash.never.verified.0123456789abcdef', '$2y$10$zyxwvutsrqponmlkjihgfedcbaZYXWVUTSRQPONMLKJIHGFEDCBA9876', '$2y$12$lbpzHVyv.ytzJju.4xk9Au5tPePdQe1WFH6sLWeWwcvIKbn0vMnE.', '$2y$10$shopownerplaceholder.hash.never.verified.0123456789ab', '$2y$10$abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123', '$2y$10$0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRS', '$2y$12$placeholder.hash.never.verified.never.0123456789abcde'\u3002",
                                        "example": "$2y$12$stXeC3GBw5uMLkgK/6Vb0.R7XLnwERRqWM/Hl7rtAhp4IcHoK8eWi",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    }
                                },
                                "required": [
                                    "customerId",
                                    "email",
                                    "name01",
                                    "name02"
                                ]
                            }
                        }
                    },
                    "required": true
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/POST/admin/customerResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/admin/customer-csv": {
            "get": {
                "operationId": "goExportCustomer",
                "summary": "ALPS `goExportCustomer` \u306b\u5bfe\u5fdc\u3059\u308b GET \u64cd\u4f5c\u3002",
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/admin/customer-csvResponse"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/admin/customer-delivery-edit": {
            "get": {
                "operationId": "goCustomerDeliveryEdit",
                "summary": "The customer id comes from the admin UI (route param), so it is\nuser-controlled \u2014 same taint discipline as the sibling\n{@see Customer} resource.",
                "parameters": [
                    {
                        "name": "customerId",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string"
                        },
                        "description": "\u4f1a\u54e1ID\uff08\u5165\u529b\uff09 - dtb_customer.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e Entity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\uff08\u30de\u30b9\u30a2\u30b5\u30a4\u30f3\u30e1\u30f3\u30c8\u9632\u6b62\u306e\u305f\u3081\u3001Session/AuthZ \u7d4c\u7531\u3067\u8aad\u307f\u51fa\u3057\u3001\u30ea\u30af\u30a8\u30b9\u30c8\u672c\u6587\u304b\u3089\u306f\u53d7\u3051\u53d6\u3089\u306a\u3044\uff09\u3002Favorite / Cart / Order \u306e\u6240\u6709\u8005\u30ad\u30fc\u3068\u3057\u3066\u6a2a\u65ad\u4f7f\u7528 Fake\u89b3\u5bdf\u6587\u5b57\u9577 12\u301c32; \u89b3\u5bdf\u5024 'customer-001', '0123456789abcdef0123456789abcdef', 'customer-002', 'favorite-list-customer', 'favorite-html-customer', 'fedcba9876543210fedcba9876543210', 'aaaaaaaa00000000bbbbbbbb11111111', '10000000aaaa1111bbbb2222cccc3333'\u3002",
                        "example": "customer-001"
                    },
                    {
                        "name": "id",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string"
                        },
                        "description": "ID\uff08\u5165\u529b\uff09 - Fake\u89b3\u5bdf\u6587\u5b57\u9577 13\u301c32; \u89b3\u5bdf\u5024 'ad000000000000000000000000000001', 'ad000000000000000000000000000003', 'fedcba9876543210fedcba9876543210', '10000000aaaa1111bbbb2222cccc3333', 'ad000000000000000000000000000002', '0123456789abcdef0123456789abcdef', 'aaaaaaaa00000000bbbbbbbb11111111', '20000000dddd2222eeee3333ffff4444'\u3002",
                        "example": "ad000000000000000000000000000001"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/admin/customer-delivery-editResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            },
            "post": {
                "operationId": "doUpdateCustomerDeliveryAddress",
                "summary": "Persist a customer delivery address. Empty `addressId` creates a new\nrow (doCreateCustomerDeliveryAddress); a present `addressId` updates\nthe existing row in place (doUpdateCustomerDeliveryAddress). The Be\nFinal guards the AdminSession (403 first) then verifies the target\ncustomer / address ownership before writing.",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "customerId": {
                                        "type": "string",
                                        "title": "\u4f1a\u54e1ID",
                                        "description": "\u5bfe\u8c61\u4f1a\u54e1\u306e\u4e0d\u900f\u660eID\uff08route param\uff09\u3002",
                                        "example": "0123456789abcdef0123456789abcdef",
                                        "minLength": 1,
                                        "maxLength": 128,
                                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "name01": {
                                        "type": "string",
                                        "title": "\u59d3",
                                        "description": "\u914d\u9001\u5148\u306e\u59d3\u3002",
                                        "example": "\u5c71\u7530",
                                        "minLength": 0,
                                        "maxLength": 255,
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "name02": {
                                        "type": "string",
                                        "title": "\u540d",
                                        "description": "\u914d\u9001\u5148\u306e\u540d\u3002",
                                        "example": "\u592a\u90ce",
                                        "minLength": 0,
                                        "maxLength": 255,
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "postalCode": {
                                        "type": "string",
                                        "title": "\u90f5\u4fbf\u756a\u53f7",
                                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002",
                                        "example": "1500001",
                                        "minLength": 0,
                                        "maxLength": 8,
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "pref": {
                                        "type": "integer",
                                        "title": "\u90fd\u9053\u5e9c\u770cID",
                                        "description": "1=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\u3002\u672a\u9078\u629e\u521d\u671f\u5024\u306e0\u3082\u8a31\u5bb9\u3002",
                                        "example": 13,
                                        "minimum": 0,
                                        "maximum": 47,
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "addr01": {
                                        "type": "string",
                                        "title": "\u5e02\u533a\u753a\u6751",
                                        "description": "\u5e02\u533a\u753a\u6751\u540d\u3002",
                                        "example": "\u6e0b\u8c37\u533a",
                                        "minLength": 0,
                                        "maxLength": 255,
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "addr02": {
                                        "type": "string",
                                        "title": "\u756a\u5730\u30fb\u5efa\u7269\u540d",
                                        "description": "\u756a\u5730\u30fb\u5efa\u7269\u540d\u3002",
                                        "example": "\u795e\u5bae\u524d1-1-1",
                                        "minLength": 0,
                                        "maxLength": 255,
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "phoneNumber": {
                                        "type": "string",
                                        "title": "\u96fb\u8a71\u756a\u53f7",
                                        "description": "\u914d\u9001\u5148\u306e\u96fb\u8a71\u756a\u53f7\u3002",
                                        "example": "0312345678",
                                        "minLength": 0,
                                        "maxLength": 13,
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "addressId": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "title": "\u914d\u9001\u5148ID",
                                        "description": "\u66f4\u65b0\u5bfe\u8c61\u306e\u914d\u9001\u5148ID\u3002\u7a7a\u6587\u5b57\u306a\u3089\u65b0\u898f\u4f5c\u6210\u3002",
                                        "example": "addr00000000000000000000000000a1",
                                        "minLength": 0,
                                        "maxLength": 128,
                                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "kana01": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "title": "\u30bb\u30a4",
                                        "description": "\u59d3\u306e\u30ab\u30ca\u3002null \u8a31\u5bb9\u3002",
                                        "example": "\u30e4\u30de\u30c0",
                                        "minLength": 0,
                                        "maxLength": 255,
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "kana02": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "title": "\u30e1\u30a4",
                                        "description": "\u540d\u306e\u30ab\u30ca\u3002null \u8a31\u5bb9\u3002",
                                        "example": "\u30bf\u30ed\u30a6",
                                        "minLength": 0,
                                        "maxLength": 255,
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "companyName": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "title": "\u4f1a\u793e\u540d",
                                        "description": "\u4f1a\u793e\u540d\u3002null \u8a31\u5bb9\u3002",
                                        "example": "Acme Corp.",
                                        "minLength": 0,
                                        "maxLength": 255,
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    }
                                },
                                "required": [
                                    "customerId",
                                    "name01",
                                    "name02",
                                    "postalCode",
                                    "pref",
                                    "addr01",
                                    "addr02",
                                    "phoneNumber"
                                ]
                            }
                        }
                    },
                    "required": true
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/POST/admin/customer-delivery-editResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            },
            "delete": {
                "operationId": "doDeleteCustomerDeliveryAddress",
                "summary": "Remove one customer delivery address. The Be Final guards the\nAdminSession (403 first) then verifies the address is owned by the\nroute-param customer before deleting.",
                "parameters": [
                    {
                        "name": "customerId",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "\u4f1a\u54e1ID - \u5bfe\u8c61\u4f1a\u54e1\u306e\u4e0d\u900f\u660eID\uff08route param\uff09\u3002",
                        "example": "0123456789abcdef0123456789abcdef"
                    },
                    {
                        "name": "addressId",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "\u914d\u9001\u5148ID - \u524a\u9664\u5bfe\u8c61\u306e\u914d\u9001\u5148ID\u3002",
                        "example": "addr00000000000000000000000000a1"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/DELETE/admin/customer-delivery-editResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/admin/customer-list": {
            "get": {
                "operationId": "goCustomerList",
                "summary": "Wave 5: filter fields are admin-form input \u2014 taint discipline\nmirrors the Wave 4 admin login.",
                "parameters": [
                    {
                        "name": "nameKeyword",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string"
                        },
                        "description": "\u540d\u524d\u691c\u7d22\u30ad\u30fc\u30ef\u30fc\u30c9 - /admin/customer-list \u306e\u691c\u7d22\u6761\u4ef6\u3002\u5546\u54c1\u540d\u30fb\u4f1a\u54e1\u540d\u30fb\u7ba1\u7406\u8005\u540d\u306a\u3069\u3001\u3053\u306e\u4e00\u89a7\u753b\u9762\u3067\u540d\u524d\u3068\u3057\u3066\u6271\u3046\u8868\u793a\u540d\u3092\u90e8\u5206\u4e00\u81f4\u691c\u7d22\u3059\u308b\u3002",
                        "example": "\u9234\u6728"
                    },
                    {
                        "name": "emailKeyword",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string"
                        },
                        "description": "\u30e1\u30fc\u30eb\u691c\u7d22\u30ad\u30fc\u30ef\u30fc\u30c9 - /admin/customer-list \u306e\u691c\u7d22\u6761\u4ef6\u3002\u4f1a\u54e1\u307e\u305f\u306f\u7ba1\u7406\u8005\u306e\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9/\u30ed\u30b0\u30a4\u30f3\u8b58\u5225\u5b50\u3092\u90e8\u5206\u4e00\u81f4\u691c\u7d22\u3059\u308b\u3002",
                        "example": "carol"
                    },
                    {
                        "name": "limit",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        },
                        "description": "\u8868\u793a\u4ef6\u6570\uff08\u5165\u529b\uff09 - /admin/customer-list \u306e\u4e00\u89a7\u8868\u793a\u3092\u5236\u5fa1\u3059\u308b\u30da\u30fc\u30b8\u30f3\u30b0/\u691c\u7d22\u6761\u4ef6\u3002\u4ef6\u6570\u3001\u958b\u59cb\u4f4d\u7f6e\u3001\u4e26\u3073\u9806\u3001\u524d\u5f8c\u30ea\u30f3\u30af\u3092\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u304c\u518d\u73fe\u3059\u308b\u305f\u3081\u306e\u5024\u3002"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/admin/customer-listResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/admin/delete-customer": {
            "post": {
                "operationId": "doDeleteCustomer",
                "summary": "Wave 6: customerId is user-controlled input from the admin UI\n(admin clicks a customer-list row, the row's customerId feeds\nthis form). Same taint discipline as goCustomer's email.",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "customerId": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "title": "\u4f1a\u54e1ID\uff08\u5165\u529b\uff09",
                                        "description": "dtb_customer.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e Entity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\uff08\u30de\u30b9\u30a2\u30b5\u30a4\u30f3\u30e1\u30f3\u30c8\u9632\u6b62\u306e\u305f\u3081\u3001Session/AuthZ \u7d4c\u7531\u3067\u8aad\u307f\u51fa\u3057\u3001\u30ea\u30af\u30a8\u30b9\u30c8\u672c\u6587\u304b\u3089\u306f\u53d7\u3051\u53d6\u3089\u306a\u3044\uff09\u3002Favorite / Cart / Order \u306e\u6240\u6709\u8005\u30ad\u30fc\u3068\u3057\u3066\u6a2a\u65ad\u4f7f\u7528 Fake\u89b3\u5bdf\u6587\u5b57\u9577 12\u301c32; \u89b3\u5bdf\u5024 'customer-001', '0123456789abcdef0123456789abcdef', 'customer-002', 'favorite-list-customer', 'favorite-html-customer', 'fedcba9876543210fedcba9876543210', 'aaaaaaaa00000000bbbbbbbb11111111', '10000000aaaa1111bbbb2222cccc3333'\u3002",
                                        "example": "customer-001",
                                        "minLength": 0,
                                        "maxLength": 128,
                                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002 Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    }
                                },
                                "required": [
                                    "customerId"
                                ]
                            }
                        }
                    },
                    "required": true
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/POST/admin/delete-customerResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/admin/empty-page": {
            "get": {
                "summary": "Renders the empty admin extension-slot page.",
                "description": "Admin-only: returns 403 for an anonymous request \u2014 the same\nfirewall contract as the other admin pages.",
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/admin/empty-pageResponse"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/admin/index": {
            "get": {
                "operationId": "goAdminTop",
                "summary": "Renders the admin dashboard scaffolding.",
                "description": "Admin-only: returns 403 for an anonymous (not-logged-in-as-admin)\nrequest \u2014 the same firewall contract as the News / Customer admin\npages, enforced here at the resource layer because there is no Be\nFinal to raise `UnauthorizedAdminAccessException`.",
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/admin/indexResponse"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/admin/log": {
            "get": {
                "operationId": "goLog",
                "summary": "ALPS `goLog` \u306b\u5bfe\u5fdc\u3059\u308b GET \u64cd\u4f5c\u3002",
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/admin/logResponse"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/admin/login": {
            "get": {
                "operationId": "doAdminLogin",
                "summary": "Show the admin login form scaffolding.",
                "description": "Pure form-info endpoint: no Be Framework involved, no domain\nlogic. Anonymous-accessible (returns 200 regardless of session\nstate) \u2014 the admin firewall guard is on the POST. The `csrfToken`\nbody field carries the trusted reference {@see \\CsrfToken::$token}\nissues, which the HTML port renders into the form's hidden\n`_csrf_token` input so the subsequent POST passes CSRF validation.",
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/admin/loginResponse"
                                }
                            }
                        }
                    }
                }
            },
            "post": {
                "operationId": "doAdminLogin",
                "summary": "Wave 4 / Phase B Slice 9: every form field is user-controlled\ninput \u2014 same taint discipline as the customer login.",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "loginId": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "title": "\u30ed\u30b0\u30a4\u30f3ID\uff08\u5165\u529b\uff09",
                                        "description": "\u7ba1\u7406\u753b\u9762\u30ed\u30b0\u30a4\u30f3\u7528\u306eID\u3002\u4e00\u610f Fake\u89b3\u5bdf\u6587\u5b57\u9577 6\u301c13; \u89b3\u5bdf\u5024 'test-admin', 'shop-owner', 'deputy', 'deleted-admin', 'unknown-user'\u3002",
                                        "example": "test-admin",
                                        "minLength": 0,
                                        "maxLength": 128,
                                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002 Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "password": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 128,
                                        "title": "\u30d1\u30b9\u30ef\u30fc\u30c9\uff08\u5165\u529b\uff09",
                                        "description": "\u66f8\u304d\u8fbc\u307f\u5c02\u7528\uff08\u30cf\u30c3\u30b7\u30e5\u5316\u3057\u3066\u4fdd\u5b58\uff09 Fake\u89b3\u5bdf\u6587\u5b57\u9577 50\u301c63; \u89b3\u5bdf\u5024 '$2y$12$stXeC3GBw5uMLkgK/6Vb0.R7XLnwERRqWM/Hl7rtAhp4IcHoK8eWi', '$2y$10$deputyplaceholder.hash.never.verified.0123456789abcdef', '$2y$10$zyxwvutsrqponmlkjihgfedcbaZYXWVUTSRQPONMLKJIHGFEDCBA9876', '$2y$12$lbpzHVyv.ytzJju.4xk9Au5tPePdQe1WFH6sLWeWwcvIKbn0vMnE.', '$2y$10$shopownerplaceholder.hash.never.verified.0123456789ab', '$2y$10$abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123', '$2y$10$0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRS', '$2y$12$placeholder.hash.never.verified.never.0123456789abcde'\u3002",
                                        "example": "$2y$12$stXeC3GBw5uMLkgK/6Vb0.R7XLnwERRqWM/Hl7rtAhp4IcHoK8eWi",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "mode": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 32,
                                        "title": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u30e2\u30fc\u30c9",
                                        "description": "HTML\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u3092Resource/JSON\u5883\u754c\u3068\u533a\u5225\u3059\u308b\u305f\u3081\u306e\u4efb\u610f\u30d1\u30e9\u30e1\u30fc\u30bf\u3002\u7ba1\u7406\u30ed\u30b0\u30a4\u30f3\u753b\u9762\u3067\u306f browser form re-render \u5224\u5b9a\u306b\u3060\u3051\u4f7f\u3046\u3002",
                                        "example": "login"
                                    }
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/POST/admin/loginResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/admin/login-history": {
            "get": {
                "operationId": "goLoginHistoryList",
                "summary": "ALPS `goLoginHistoryList` \u306b\u5bfe\u5fdc\u3059\u308b GET \u64cd\u4f5c\u3002",
                "parameters": [
                    {
                        "name": "limit",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        },
                        "description": "\u8868\u793a\u4ef6\u6570\uff08\u5165\u529b\uff09 - /admin/login-history \u306e\u4e00\u89a7\u8868\u793a\u3092\u5236\u5fa1\u3059\u308b\u30da\u30fc\u30b8\u30f3\u30b0/\u691c\u7d22\u6761\u4ef6\u3002\u4ef6\u6570\u3001\u958b\u59cb\u4f4d\u7f6e\u3001\u4e26\u3073\u9806\u3001\u524d\u5f8c\u30ea\u30f3\u30af\u3092\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u304c\u518d\u73fe\u3059\u308b\u305f\u3081\u306e\u5024\u3002"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/admin/login-historyResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/admin/logout": {
            "post": {
                "operationId": "doAdminLogout",
                "summary": "Wave 4 / Phase B Slice 9: the CSRF token is user-controlled\ninput \u2014 same taint discipline as the customer logout.",
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/POST/admin/logoutResponse"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/admin/mail-template": {
            "get": {
                "operationId": "goMailTemplateList",
                "summary": "Wave 9\u03b9: goMailTemplateList \u2014 admin lists every mail template.",
                "parameters": [
                    {
                        "name": "mailTemplateId",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/admin/mail-templateResponse"
                                }
                            }
                        }
                    }
                }
            },
            "post": {
                "operationId": "doUpdateMailTemplate",
                "summary": "ALPS `doUpdateMailTemplate` \u306b\u5bfe\u5fdc\u3059\u308b POST \u64cd\u4f5c\u3002",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "mailTemplateId": {
                                        "type": [
                                            "string",
                                            "integer",
                                            "null"
                                        ],
                                        "title": "\u30e1\u30fc\u30eb\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8ID\uff08\u5165\u529b\uff09",
                                        "description": "dtb_mail_template.id\uff08int unsigned AUTO_INCREMENT\uff09\u306e\u6b63\u306e\u6574\u6570\u4e3b\u30ad\u30fc\u3002doUpdateMailTemplate \u306e\u5fc5\u9808\u5165\u529b\u3067\u3001\u65e2\u5b58\u884c\u3092\u6307\u3059\u5fc5\u8981\u304c\u3042\u308b\u3002SqlMailTemplateStorage \u306f findById / update \u3092\u3053\u306e id \u3067\u5f15\u304d\u3001\u672a\u77e5 id \u306f MailTemplateNotFoundException\uff08404\uff09\u3002\u65b0\u898f\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u4f5c\u6210\u30d5\u30ed\u30fc\u306f file_name \u8a2d\u5b9a\u3068 Twig \u30d5\u30a1\u30a4\u30eb\u66f8\u304d\u51fa\u3057\u3092\u4f34\u3046\u305f\u3081 Phase 2 scope \u3067\u3042\u308a\u3001ID \u751f\u6210\u5668\u306f\u5b58\u5728\u3057\u306a\u3044\uff08\u66f4\u65b0\u5c02\u7528\u5951\u7d04\uff09 Fake\u89b3\u5bdf\u6570\u5024 1\u301c2; \u89b3\u5bdf\u5024 '1', '2'\u3002",
                                        "example": 1,
                                        "$comment": "\u30e1\u30fc\u30eb\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8ID\uff08\u5165\u529b\uff09\u306f\u696d\u52d9\u4e0aID\u3060\u304c\u3001HTTP\u30d5\u30a9\u30fc\u30e0\u3067\u306f\u6587\u5b57\u5217\u3068\u3057\u3066\u5c4a\u304f\u3002Resource/Semantic\u5c64\u306e\u691c\u8a3c\u3092\u901a\u3059\u305f\u3081transport schema\u3067\u306fstring|integer\u3092\u8a31\u5bb9\u3059\u308b\u3002 Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation.",
                                        "minLength": 0,
                                        "maxLength": 128
                                    },
                                    "mailSubject": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 32,
                                        "title": "\u30e1\u30fc\u30eb\u4ef6\u540d\uff08\u5165\u529b\uff09",
                                        "description": "\u30e1\u30fc\u30eb\u306e\u4ef6\u540d\u3002\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u5909\u6570\u3092\u542b\u3080\u5834\u5408\u3042\u308a Fake\u89b3\u5bdf\u6587\u5b57\u9577 13\u301c13; \u89b3\u5bdf\u5024 '\u3054\u6ce8\u6587\u3042\u308a\u304c\u3068\u3046\u3054\u3056\u3044\u307e\u3059'\u3002",
                                        "example": "\u3054\u6ce8\u6587\u3042\u308a\u304c\u3068\u3046\u3054\u3056\u3044\u307e\u3059",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "mail_subject": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 32,
                                        "title": "\u30e1\u30fc\u30eb\u4ef6\u540d\uff08HTML\u30d5\u30a9\u30fc\u30e0\u5165\u529b\uff09",
                                        "description": "\u7ba1\u7406\u753b\u9762HTML\u30d5\u30a9\u30fc\u30e0\u306e `mail_subject` field\u3002Resource\u3067\u306f `mailSubject` \u3068\u540c\u3058 doUpdateMailTemplate \u306e\u4ef6\u540d\u5165\u529b\u3068\u3057\u3066\u6271\u3046\u3002",
                                        "example": "\u3054\u6ce8\u6587\u3042\u308a\u304c\u3068\u3046\u3054\u3056\u3044\u307e\u3059",
                                        "$comment": "HTTP form boundary uses snake_case field names; Resource normalizes this to the ALPS mailSubject input."
                                    }
                                },
                                "required": [
                                    "mailTemplateId"
                                ]
                            }
                        }
                    },
                    "required": true
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/POST/admin/mail-templateResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            },
            "delete": {
                "operationId": "doDeleteMailTemplate",
                "summary": "EC-CUBE doDeleteMailTemplate.",
                "description": "The mail-template master still needs a full file-backed delete in\na later adapter pass; this surface is intentionally narrow and\nconcrete so the legacy route reaches a Resource with CSRF/AUTHZ\nsemantics instead of generic ActionRedirect.",
                "parameters": [
                    {
                        "name": "mailTemplateId",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "integer"
                        },
                        "description": "\u30e1\u30fc\u30eb\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8ID\uff08\u5165\u529b\uff09 - dtb_mail_template.id\uff08int unsigned AUTO_INCREMENT\uff09\u306e\u6b63\u306e\u6574\u6570\u4e3b\u30ad\u30fc\u3002doUpdateMailTemplate \u306e\u5fc5\u9808\u5165\u529b\u3067\u3001\u65e2\u5b58\u884c\u3092\u6307\u3059\u5fc5\u8981\u304c\u3042\u308b\u3002SqlMailTemplateStorage \u306f findById / update \u3092\u3053\u306e id \u3067\u5f15\u304d\u3001\u672a\u77e5 id \u306f MailTemplateNotFoundException\uff08404\uff09\u3002\u65b0\u898f\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u4f5c\u6210\u30d5\u30ed\u30fc\u306f file_name \u8a2d\u5b9a\u3068 Twig \u30d5\u30a1\u30a4\u30eb\u66f8\u304d\u51fa\u3057\u3092\u4f34\u3046\u305f\u3081 Phase 2 scope \u3067\u3042\u308a\u3001ID \u751f\u6210\u5668\u306f\u5b58\u5728\u3057\u306a\u3044\uff08\u66f4\u65b0\u5c02\u7528\u5951\u7d04\uff09 Fake\u89b3\u5bdf\u6570\u5024 1\u301c2; \u89b3\u5bdf\u5024 '1', '2'\u3002",
                        "example": "1"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/DELETE/admin/mail-templateResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/admin/master-data": {
            "get": {
                "operationId": "goMasterData",
                "summary": "ALPS `goMasterData` \u306b\u5bfe\u5fdc\u3059\u308b GET \u64cd\u4f5c\u3002",
                "parameters": [
                    {
                        "name": "masterType",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string"
                        },
                        "description": "\u30de\u30b9\u30bf\u7a2e\u5225\uff08\u5165\u529b\uff09 - /admin/master-data \u306e\u51e6\u7406\u6587\u8108\u304b\u3089\u6d3e\u751f\u3057\u305f\u30de\u30b9\u30bf\u7a2e\u5225\u3002ALPS\u57fa\u790e\u8a9e\u3060\u3051\u3067\u306f\u5358\u4f4d\u3084\u7528\u9014\u304c\u4e0d\u8db3\u3059\u308b\u305f\u3081\u3001\u3053\u306eResource\u4e0a\u306e\u610f\u5473\u3092\u660e\u793a\u3059\u308b\u3002"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/admin/master-dataResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            },
            "put": {
                "operationId": "doSelectMasterData",
                "summary": "Selects which master to view (doSelectMasterData). ALPS marks it\n`idempotent` \u2192 PUT; returns the chosen master's rows.",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "masterType": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 255,
                                        "title": "\u30de\u30b9\u30bf\u7a2e\u5225\uff08\u5165\u529b\uff09",
                                        "description": "/admin/master-data \u306e\u51e6\u7406\u6587\u8108\u304b\u3089\u6d3e\u751f\u3057\u305f\u30de\u30b9\u30bf\u7a2e\u5225\u3002ALPS\u57fa\u790e\u8a9e\u3060\u3051\u3067\u306f\u5358\u4f4d\u3084\u7528\u9014\u304c\u4e0d\u8db3\u3059\u308b\u305f\u3081\u3001\u3053\u306eResource\u4e0a\u306e\u610f\u5473\u3092\u660e\u793a\u3059\u308b\u3002",
                                        "default": "tag",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    }
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/PUT/admin/master-dataResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/admin/master-data-edit": {
            "put": {
                "operationId": "doUpdateMasterData",
                "summary": "ALPS `doUpdateMasterData` \u306b\u5bfe\u5fdc\u3059\u308b PUT \u64cd\u4f5c\u3002",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "masterType": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 255,
                                        "title": "\u30de\u30b9\u30bf\u7a2e\u5225\uff08\u5165\u529b\uff09",
                                        "description": "/admin/master-data-edit \u306e\u51e6\u7406\u6587\u8108\u304b\u3089\u6d3e\u751f\u3057\u305f\u30de\u30b9\u30bf\u7a2e\u5225\u3002ALPS\u57fa\u790e\u8a9e\u3060\u3051\u3067\u306f\u5358\u4f4d\u3084\u7528\u9014\u304c\u4e0d\u8db3\u3059\u308b\u305f\u3081\u3001\u3053\u306eResource\u4e0a\u306e\u610f\u5473\u3092\u660e\u793a\u3059\u308b\u3002",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "rows": {
                                        "type": [
                                            "array",
                                            "null"
                                        ],
                                        "title": "\u884c\u30c7\u30fc\u30bf",
                                        "description": "/admin/master-data-edit \u306e\u30de\u30b9\u30bf/CSV\u884c\u30c7\u30fc\u30bf\u3002\u5217\u96c6\u5408\u306f\u5bfe\u8c61\u30de\u30b9\u30bf\u306b\u3088\u308a\u5909\u308f\u308b\u305f\u3081\u3001\u65e2\u77e5\u5217\u3092\u512a\u5148\u3057\u3066\u5951\u7d04\u3059\u308b\u3002",
                                        "items": {
                                            "type": "object",
                                            "title": "\u884c\uff08\u5165\u529b\uff09",
                                            "description": "/admin/master-data-edit \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u884c\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `rows` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002",
                                            "properties": {
                                                "name": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ],
                                                    "minLength": 0,
                                                    "maxLength": 32,
                                                    "title": "\u51e6\u7406\u8868\u793a\u540d\uff08\u5165\u529b\uff09",
                                                    "description": "Fake\u89b3\u5bdf\u6587\u5b57\u9577 1\u301c7; \u89b3\u5bdf\u5024 '\u30c6\u30b9\u30c8\u7ba1\u7406\u8005', '\u526f\u7ba1\u7406\u8005', '\u5e97\u8217\u30aa\u30fc\u30ca\u30fc', '\u524a\u9664\u6e08\u307f\u7ba1\u7406\u8005', 'Red', 'Blue', 'S', 'Color'\u3002",
                                                    "example": "\u30c6\u30b9\u30c8\u7ba1\u7406\u8005",
                                                    "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                                },
                                                "value": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ],
                                                    "minLength": 0,
                                                    "maxLength": 255,
                                                    "title": "\u30de\u30b9\u30bf\u5024",
                                                    "description": "/admin/master-data-edit \u306e\u30de\u30b9\u30bf\u7a2e\u5225\u307e\u305f\u306f\u30de\u30b9\u30bf\u884c\u306b\u8868\u793a\u3055\u308c\u308b\u5024\u3002\u9078\u629e\u80a2\u306e\u8868\u793a/\u4fdd\u5b58\u5358\u4f4d\u3068\u3057\u3066\u6271\u3046\u3002",
                                                    "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                                },
                                                "sortNo": {
                                                    "type": [
                                                        "integer",
                                                        "null"
                                                    ],
                                                    "title": "\u8868\u793a\u9806\uff08\u5165\u529b\uff09",
                                                    "description": "\u4e00\u89a7\u306b\u304a\u3051\u308b\u4e26\u3073\u9806 Fake\u89b3\u5bdf\u6570\u5024 1\u301c20; \u89b3\u5bdf\u5024 '1', '3', '2', '4', '10', '20'\u3002",
                                                    "example": 1,
                                                    "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                                },
                                                "enabled": {
                                                    "type": [
                                                        "boolean",
                                                        "null"
                                                    ],
                                                    "title": "\u51e6\u7406\u72b6\u614b\u30d5\u30e9\u30b0\uff08\u5165\u529b\uff09",
                                                    "description": "\u89b3\u5bdf\u5024 'true', 'false'\u3002",
                                                    "example": "true",
                                                    "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                                }
                                            },
                                            "$comment": "\u914d\u5217\u8981\u7d20\u306f\u30de\u30b9\u30bf/CSV/option map\u306e\u52d5\u7684\u884c\u3067\u3042\u308a\u3001\u5217\u96c6\u5408\u304c\u5bfe\u8c61\u7a2e\u5225\u306b\u3088\u308a\u5909\u308f\u308b\u305f\u3081\u56fa\u5b9ashape\u5316\u3057\u306a\u3044\u3002\u65e2\u77e5property\u306f\u5951\u7d04\u3057\u3001\u8ffd\u52a0\u5217\u306f\u8a72\u5f53\u30b5\u30fc\u30d3\u30b9\u5883\u754c\u3067\u6271\u3046\u3002 Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                        },
                                        "minItems": 0,
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    }
                                },
                                "required": [
                                    "masterType"
                                ]
                            }
                        }
                    },
                    "required": true
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/PUT/admin/master-data-editResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/admin/member": {
            "get": {
                "operationId": "goMember",
                "summary": "Wave 8: the loginId comes from the admin UI (typed input or\nquery string) \u2014 user-controlled.",
                "parameters": [
                    {
                        "name": "loginId",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string"
                        },
                        "description": "\u30ed\u30b0\u30a4\u30f3ID\uff08\u5165\u529b\uff09 - \u7ba1\u7406\u753b\u9762\u30ed\u30b0\u30a4\u30f3\u7528\u306eID\u3002\u4e00\u610f Fake\u89b3\u5bdf\u6587\u5b57\u9577 6\u301c13; \u89b3\u5bdf\u5024 'test-admin', 'shop-owner', 'deputy', 'deleted-admin', 'unknown-user'\u3002",
                        "example": "test-admin"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/admin/memberResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            },
            "post": {
                "operationId": "doCreateMember",
                "summary": "Wave 8: all form fields are user-controlled. The admin AUTHZ\ncheck lives inside the first Being (MemberCreating), so this\nmethod just maps the exceptions.",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "loginId": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "title": "\u30ed\u30b0\u30a4\u30f3ID\uff08\u5165\u529b\uff09",
                                        "description": "\u7ba1\u7406\u753b\u9762\u30ed\u30b0\u30a4\u30f3\u7528\u306eID\u3002\u4e00\u610f Fake\u89b3\u5bdf\u6587\u5b57\u9577 6\u301c13; \u89b3\u5bdf\u5024 'test-admin', 'shop-owner', 'deputy', 'deleted-admin', 'unknown-user'\u3002",
                                        "example": "test-admin",
                                        "minLength": 0,
                                        "maxLength": 128,
                                        "pattern": "^[A-Za-z0-9._-]+$",
                                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002 Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "password": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 128,
                                        "title": "\u30d1\u30b9\u30ef\u30fc\u30c9\uff08\u5165\u529b\uff09",
                                        "description": "\u66f8\u304d\u8fbc\u307f\u5c02\u7528\uff08\u30cf\u30c3\u30b7\u30e5\u5316\u3057\u3066\u4fdd\u5b58\uff09 Fake\u89b3\u5bdf\u6587\u5b57\u9577 50\u301c63; \u89b3\u5bdf\u5024 '$2y$12$stXeC3GBw5uMLkgK/6Vb0.R7XLnwERRqWM/Hl7rtAhp4IcHoK8eWi', '$2y$10$deputyplaceholder.hash.never.verified.0123456789abcdef', '$2y$10$zyxwvutsrqponmlkjihgfedcbaZYXWVUTSRQPONMLKJIHGFEDCBA9876', '$2y$12$lbpzHVyv.ytzJju.4xk9Au5tPePdQe1WFH6sLWeWwcvIKbn0vMnE.', '$2y$10$shopownerplaceholder.hash.never.verified.0123456789ab', '$2y$10$abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123', '$2y$10$0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRS', '$2y$12$placeholder.hash.never.verified.never.0123456789abcde'\u3002",
                                        "example": "$2y$12$stXeC3GBw5uMLkgK/6Vb0.R7XLnwERRqWM/Hl7rtAhp4IcHoK8eWi",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "name": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 32,
                                        "title": "\u51e6\u7406\u8868\u793a\u540d\uff08\u5165\u529b\uff09",
                                        "description": "Fake\u89b3\u5bdf\u6587\u5b57\u9577 1\u301c7; \u89b3\u5bdf\u5024 '\u30c6\u30b9\u30c8\u7ba1\u7406\u8005', '\u526f\u7ba1\u7406\u8005', '\u5e97\u8217\u30aa\u30fc\u30ca\u30fc', '\u524a\u9664\u6e08\u307f\u7ba1\u7406\u8005', 'Red', 'Blue', 'S', 'Color'\u3002",
                                        "example": "\u30c6\u30b9\u30c8\u7ba1\u7406\u8005",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "authority": {
                                        "type": [
                                            "integer",
                                            "null"
                                        ],
                                        "title": "\u6a29\u9650\uff08\u5165\u529b\uff09",
                                        "description": "\u7ba1\u7406\u8005\u6a29\u9650\u30ec\u30d9\u30eb\u30020=\u30b7\u30b9\u30c6\u30e0\u7ba1\u7406\u8005\uff08\u6700\u9ad8\u6a29\u9650\u3001\u5168\u6a5f\u80fd\u30a2\u30af\u30bb\u30b9\u53ef\u80fd\uff09, 1=\u5e97\u8217\u30aa\u30fc\u30ca\u30fc\uff08\u5236\u9650\u3042\u308a\u3001denyUrl\u3067\u5236\u9650\u3055\u308c\u305fURL\u306b\u30a2\u30af\u30bb\u30b9\u4e0d\u53ef\uff09\u3002\u6570\u5024\u304c\u5c0f\u3055\u3044\u307b\u3069\u6a29\u9650\u304c\u9ad8\u3044\u3002AuthorityRole\u306eURL\u62d2\u5426\u30d1\u30bf\u30fc\u30f3\u3067\u30a2\u30af\u30bb\u30b9\u5236\u5fa1 Fake\u89b3\u5bdf\u6570\u5024 0\u301c1; \u89b3\u5bdf\u5024 '1', '0'\u3002",
                                        "example": 1,
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "passwordConfirm": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 128,
                                        "title": "\u30d1\u30b9\u30ef\u30fc\u30c9\u78ba\u8a8d\uff08\u5165\u529b\uff09",
                                        "$comment": "Browser-form boundary field; compared with password before CreateMemberInput.",
                                        "description": "\u30d1\u30b9\u30ef\u30fc\u30c9\u78ba\u8a8d\uff08\u5165\u529b\uff09"
                                    },
                                    "mode": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 32,
                                        "title": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u30e2\u30fc\u30c9",
                                        "$comment": "HTML form submit marker; Resource workflow calls omit it.",
                                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u30e2\u30fc\u30c9"
                                    }
                                },
                                "required": [
                                    "loginId",
                                    "password",
                                    "name",
                                    "authority"
                                ]
                            }
                        }
                    },
                    "required": true
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/POST/admin/memberResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            },
            "put": {
                "operationId": "doUpdateMember",
                "summary": "Wave 8: doUpdateMember \u2014 edits `name` only. The other admin\nfields (authority, work, passwordHash) have their own dedicated\ntransitions / are out of scope for Phase 1. EC-CUBE 4.3\ndtb_member has no email column, so no mailAddress field is\naccepted.",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "loginId": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "title": "\u30ed\u30b0\u30a4\u30f3ID\uff08\u5165\u529b\uff09",
                                        "description": "\u7ba1\u7406\u753b\u9762\u30ed\u30b0\u30a4\u30f3\u7528\u306eID\u3002\u4e00\u610f Fake\u89b3\u5bdf\u6587\u5b57\u9577 6\u301c13; \u89b3\u5bdf\u5024 'test-admin', 'shop-owner', 'deputy', 'deleted-admin', 'unknown-user'\u3002",
                                        "example": "test-admin",
                                        "minLength": 0,
                                        "maxLength": 128,
                                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002 Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "name": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 32,
                                        "title": "\u51e6\u7406\u8868\u793a\u540d\uff08\u5165\u529b\uff09",
                                        "description": "Fake\u89b3\u5bdf\u6587\u5b57\u9577 1\u301c7; \u89b3\u5bdf\u5024 '\u30c6\u30b9\u30c8\u7ba1\u7406\u8005', '\u526f\u7ba1\u7406\u8005', '\u5e97\u8217\u30aa\u30fc\u30ca\u30fc', '\u524a\u9664\u6e08\u307f\u7ba1\u7406\u8005', 'Red', 'Blue', 'S', 'Color'\u3002",
                                        "example": "\u30c6\u30b9\u30c8\u7ba1\u7406\u8005",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "mode": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 32,
                                        "title": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u30e2\u30fc\u30c9",
                                        "$comment": "HTML form submit marker; Resource workflow calls omit it.",
                                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u30e2\u30fc\u30c9"
                                    }
                                },
                                "required": [
                                    "loginId"
                                ]
                            }
                        }
                    },
                    "required": true
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/PUT/admin/memberResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            },
            "delete": {
                "operationId": "doDeleteMember",
                "summary": "Wave 8: doDeleteMember \u2014 soft-delete (work=0). Idempotent\nreplay returns 200 with `alreadyDeleted=true`. The caller's own\naccount, and any target that outranks the caller, raise\n{@see InsufficientAuthorityException} \u2192 403.",
                "parameters": [
                    {
                        "name": "loginId",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "\u30ed\u30b0\u30a4\u30f3ID\uff08\u5165\u529b\uff09 - \u7ba1\u7406\u753b\u9762\u30ed\u30b0\u30a4\u30f3\u7528\u306eID\u3002\u4e00\u610f Fake\u89b3\u5bdf\u6587\u5b57\u9577 6\u301c13; \u89b3\u5bdf\u5024 'test-admin', 'shop-owner', 'deputy', 'deleted-admin', 'unknown-user'\u3002",
                        "example": "test-admin"
                    },
                    {
                        "name": "mode",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string"
                        },
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u30e2\u30fc\u30c9"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/DELETE/admin/memberResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/admin/member-list": {
            "get": {
                "operationId": "goMemberList",
                "summary": "Wave 8: filter / paging knobs are admin-form input. Same taint\ndiscipline as the customer-list and order-list variants.",
                "parameters": [
                    {
                        "name": "nameKeyword",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string"
                        },
                        "description": "\u540d\u524d\u691c\u7d22\u30ad\u30fc\u30ef\u30fc\u30c9 - /admin/member-list \u306e\u691c\u7d22\u6761\u4ef6\u3002\u5546\u54c1\u540d\u30fb\u4f1a\u54e1\u540d\u30fb\u7ba1\u7406\u8005\u540d\u306a\u3069\u3001\u3053\u306e\u4e00\u89a7\u753b\u9762\u3067\u540d\u524d\u3068\u3057\u3066\u6271\u3046\u8868\u793a\u540d\u3092\u90e8\u5206\u4e00\u81f4\u691c\u7d22\u3059\u308b\u3002",
                        "example": "\u9234\u6728"
                    },
                    {
                        "name": "limit",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        },
                        "description": "\u8868\u793a\u4ef6\u6570\uff08\u5165\u529b\uff09 - /admin/member-list \u306e\u4e00\u89a7\u8868\u793a\u3092\u5236\u5fa1\u3059\u308b\u30da\u30fc\u30b8\u30f3\u30b0/\u691c\u7d22\u6761\u4ef6\u3002\u4ef6\u6570\u3001\u958b\u59cb\u4f4d\u7f6e\u3001\u4e26\u3073\u9806\u3001\u524d\u5f8c\u30ea\u30f3\u30af\u3092\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u304c\u518d\u73fe\u3059\u308b\u305f\u3081\u306e\u5024\u3002"
                    },
                    {
                        "name": "offset",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        },
                        "description": "\u958b\u59cb\u4f4d\u7f6e\uff08\u5165\u529b\uff09 - /admin/member-list \u306e\u4e00\u89a7\u8868\u793a\u3092\u5236\u5fa1\u3059\u308b\u30da\u30fc\u30b8\u30f3\u30b0/\u691c\u7d22\u6761\u4ef6\u3002\u4ef6\u6570\u3001\u958b\u59cb\u4f4d\u7f6e\u3001\u4e26\u3073\u9806\u3001\u524d\u5f8c\u30ea\u30f3\u30af\u3092\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u304c\u518d\u73fe\u3059\u308b\u305f\u3081\u306e\u5024\u3002"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/admin/member-listResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/admin/order": {
            "get": {
                "operationId": "goOrder",
                "summary": "Wave 7: orderNo comes from the admin UI (click on an order-list\nrow, or pasted into the URL).",
                "parameters": [
                    {
                        "name": "orderNo",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "\u6ce8\u6587\u756a\u53f7\uff08\u5165\u529b\uff09 - \u9867\u5ba2\u5411\u3051\u306e\u6ce8\u6587\u756a\u53f7\u3002\u30d5\u30a9\u30fc\u30de\u30c3\u30c8\u306f\u30ab\u30b9\u30bf\u30de\u30a4\u30ba\u53ef\u80fd Fake\u89b3\u5bdf\u6587\u5b57\u9577 32\u301c32; \u89b3\u5bdf\u5024 'past0000000000000000000000000001'\u3002",
                        "example": "past0000000000000000000000000001"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/admin/orderResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            },
            "put": {
                "operationId": "doUpdateOrder",
                "summary": "Wave 7: every editable field is admin-form input. The orderNo\nselector is also admin-controlled. Same taint discipline as the\nWave 5 / Wave 6 admin resources.",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "orderNo": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 64,
                                        "title": "\u6ce8\u6587\u756a\u53f7\uff08\u5165\u529b\uff09",
                                        "description": "\u9867\u5ba2\u5411\u3051\u306e\u6ce8\u6587\u756a\u53f7\u3002\u30d5\u30a9\u30fc\u30de\u30c3\u30c8\u306f\u30ab\u30b9\u30bf\u30de\u30a4\u30ba\u53ef\u80fd Fake\u89b3\u5bdf\u6587\u5b57\u9577 32\u301c32; \u89b3\u5bdf\u5024 'past0000000000000000000000000001'\u3002",
                                        "example": "past0000000000000000000000000001",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "discount": {
                                        "title": "\u5024\u5f15\u304d\u984d\uff08\u5165\u529b\uff09",
                                        "description": "\u53d7\u6ce8\u5168\u4f53\u306e\u5024\u5f15\u304d\u5408\u8a08\u984d\u3002\u30af\u30fc\u30dd\u30f3\u7b49\u306b\u3088\u308b\u5024\u5f15\u304d Fake\u89b3\u5bdf\u6570\u5024 0\u301c0; \u89b3\u5bdf\u5024 '0'\u3002",
                                        "type": [
                                            "integer",
                                            "null"
                                        ],
                                        "example": 0,
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "charge": {
                                        "title": "\u624b\u6570\u6599\uff08\u5165\u529b\uff09",
                                        "description": "\u53d7\u6ce8\u306e\u6c7a\u6e08\u624b\u6570\u6599\u3002paymentCharge\uff08\u652f\u6255\u65b9\u6cd5\u30de\u30b9\u30bf\u306e\u624b\u6570\u6599\uff09\u306e\u30b9\u30ca\u30c3\u30d7\u30b7\u30e7\u30c3\u30c8\u3002PaymentChargePreprocessor\u306b\u3088\u308a\u53d7\u6ce8\u4f5c\u6210\u6642\u306b\u30b3\u30d4\u30fc\u3055\u308c\u308b Fake\u89b3\u5bdf\u6570\u5024 0\u301c300; \u89b3\u5bdf\u5024 '0', '300', '200'\u3002",
                                        "type": [
                                            "integer",
                                            "string",
                                            "null"
                                        ],
                                        "example": "0",
                                        "$comment": "\u624b\u6570\u6599\uff08\u5165\u529b\uff09\u306f\u672c\u6765\u6570\u5024/\u5217\u6319\u306e\u696d\u52d9\u5024\u3060\u304c\u3001HTTP\u30d5\u30a9\u30fc\u30e0\u3067\u306f\u6587\u5b57\u5217\u3068\u3057\u3066\u5c4a\u304f\u3002Resource/Semantic\u5c64\u306e400\u5fdc\u7b54\u3092\u596a\u308f\u306a\u3044\u305f\u3081transport schema\u3067\u306f\u6587\u5b57\u5217\u5165\u529b\u3092\u8a31\u5bb9\u3059\u308b\u3002 Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "usePoint": {
                                        "type": [
                                            "integer",
                                            "null"
                                        ],
                                        "title": "\u4f7f\u7528\u30dd\u30a4\u30f3\u30c8\uff08\u5165\u529b\uff09",
                                        "description": "\u6ce8\u6587\u3067\u4f7f\u7528\u3059\u308b\u30dd\u30a4\u30f3\u30c8\u6570\u3002\u5b9f\u969b\u306e\u5024\u5f15\u304d\u984d\u306f usePoint x pointConversionRate\uff08\u5207\u308a\u6368\u3066\uff09\u3067\u8a08\u7b97\u3055\u308c\u3001\u4e0d\u8ab2\u7a0e\u306e\u30dd\u30a4\u30f3\u30c8\u5024\u5f15\u304d\u660e\u7d30\u3068\u3057\u3066\u53d7\u6ce8\u306b\u8ffd\u52a0 Fake\u89b3\u5bdf\u6570\u5024 0\u301c0; \u89b3\u5bdf\u5024 '0'\u3002",
                                        "example": 0,
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    }
                                },
                                "required": [
                                    "orderNo"
                                ]
                            }
                        }
                    },
                    "required": true
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/PUT/admin/orderResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/admin/order-list": {
            "get": {
                "operationId": "goOrderList",
                "summary": "Wave 7: pagination knobs are admin-form input. Same taint\ndiscipline as Wave 5 / Wave 6 admin resources.",
                "parameters": [
                    {
                        "name": "limit",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        },
                        "description": "\u8868\u793a\u4ef6\u6570\uff08\u5165\u529b\uff09 - /admin/order-list \u306e\u4e00\u89a7\u8868\u793a\u3092\u5236\u5fa1\u3059\u308b\u30da\u30fc\u30b8\u30f3\u30b0/\u691c\u7d22\u6761\u4ef6\u3002\u4ef6\u6570\u3001\u958b\u59cb\u4f4d\u7f6e\u3001\u4e26\u3073\u9806\u3001\u524d\u5f8c\u30ea\u30f3\u30af\u3092\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u304c\u518d\u73fe\u3059\u308b\u305f\u3081\u306e\u5024\u3002"
                    },
                    {
                        "name": "offset",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        },
                        "description": "\u958b\u59cb\u4f4d\u7f6e\uff08\u5165\u529b\uff09 - /admin/order-list \u306e\u4e00\u89a7\u8868\u793a\u3092\u5236\u5fa1\u3059\u308b\u30da\u30fc\u30b8\u30f3\u30b0/\u691c\u7d22\u6761\u4ef6\u3002\u4ef6\u6570\u3001\u958b\u59cb\u4f4d\u7f6e\u3001\u4e26\u3073\u9806\u3001\u524d\u5f8c\u30ea\u30f3\u30af\u3092\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u304c\u518d\u73fe\u3059\u308b\u305f\u3081\u306e\u5024\u3002"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/admin/order-listResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/admin/order-status": {
            "get": {
                "operationId": "doUpdateOrderStatus",
                "summary": "EC-CUBE \u53d7\u6ce8\u5bfe\u5fdc\u72b6\u6cc1\u8a2d\u5b9a \u2014 Setting/Shop Tier-2.",
                "description": "Thin GET renderer for `Setting/Shop/order_status.twig`. BeMart\nhas a per-order status-change transition on POST, but not yet a\nmaster-data transition for editing status labels/colors.",
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/admin/order-statusResponse"
                                }
                            }
                        }
                    }
                }
            },
            "put": {
                "operationId": "doUpdateOrderStatusList",
                "summary": "EC-CUBE doUpdateOrderStatusList \u2014 settings-side status list update.",
                "description": "This is intentionally separate from {@see \\onPost()}, which\nupdates one order's workflow status. The settings screen submits\nthe master-list shape; this wave exposes a concrete CSRF/AUTHZ\nsurface and returns the accepted payload count without claiming\nfull EC-CUBE master-data persistence yet.",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "orderStatuses": {
                                        "type": [
                                            "array",
                                            "null"
                                        ],
                                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9\u4e00\u89a7\uff08\u5165\u529b\uff09",
                                        "description": "/admin/order-status \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9\u4e00\u89a7\u3002\u914d\u5217\u8981\u7d20\u306fALPS\u610f\u5473\u3068Fake\u89b3\u5bdf\u306b\u57fa\u3065\u304d\u3001\u56fa\u5b9a\u3067\u304d\u306a\u3044\u52d5\u7684\u5217\u306f\u4f8b\u5916\u7406\u7531\u3092\u53f0\u5e33\u5316\u3059\u308b\u3002",
                                        "items": {
                                            "type": "object",
                                            "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9\uff08\u5165\u529b\uff09",
                                            "description": "/admin/order-status \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `orderStatuses` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002",
                                            "properties": {
                                                "name": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ],
                                                    "minLength": 0,
                                                    "maxLength": 32,
                                                    "title": "\u51e6\u7406\u8868\u793a\u540d\uff08\u5165\u529b\uff09",
                                                    "description": "Fake\u89b3\u5bdf\u6587\u5b57\u9577 1\u301c7; \u89b3\u5bdf\u5024 '\u30c6\u30b9\u30c8\u7ba1\u7406\u8005', '\u526f\u7ba1\u7406\u8005', '\u5e97\u8217\u30aa\u30fc\u30ca\u30fc', '\u524a\u9664\u6e08\u307f\u7ba1\u7406\u8005', 'Red', 'Blue', 'S', 'Color'\u3002",
                                                    "example": "\u30c6\u30b9\u30c8\u7ba1\u7406\u8005",
                                                    "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                                },
                                                "color": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ],
                                                    "minLength": 0,
                                                    "maxLength": 255,
                                                    "title": "\u8868\u793a\u9805\u76ee\uff08\u5165\u529b\uff09",
                                                    "description": "/admin/order-status \u306e\u753b\u9762\u8868\u793a\u306b\u4f7f\u3046\u8868\u793a\u9805\u76ee\u3002\u696d\u52d9\u30a8\u30f3\u30c6\u30a3\u30c6\u30a3\u305d\u306e\u3082\u306e\u3067\u306f\u306a\u304f\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8/\u4e00\u89a7\u8868\u793a\u306e\u88dc\u52a9\u5024\u3002",
                                                    "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                                },
                                                "count": {
                                                    "type": [
                                                        "integer",
                                                        "null"
                                                    ],
                                                    "title": "\u4ef6\u6570",
                                                    "description": "/admin/order-status \u306e\u5165\u529b\u3067\u8fd4\u3059\u4ef6\u6570\u3002\u4e00\u89a7\u30fb\u96c6\u8a08\u30fb\u51e6\u7406\u7d50\u679c\u306e\u898f\u6a21\u3092\u8868\u3059\u975e\u8ca0\u6574\u6570\u3002",
                                                    "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                                }
                                            },
                                            "$comment": "\u914d\u5217\u8981\u7d20\u306f\u30de\u30b9\u30bf/CSV/option map\u306e\u52d5\u7684\u884c\u3067\u3042\u308a\u3001\u5217\u96c6\u5408\u304c\u5bfe\u8c61\u7a2e\u5225\u306b\u3088\u308a\u5909\u308f\u308b\u305f\u3081\u56fa\u5b9ashape\u5316\u3057\u306a\u3044\u3002\u65e2\u77e5property\u306f\u5951\u7d04\u3057\u3001\u8ffd\u52a0\u5217\u306f\u8a72\u5f53\u30b5\u30fc\u30d3\u30b9\u5883\u754c\u3067\u6271\u3046\u3002 Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                        },
                                        "minItems": 0,
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "orderStatusRows": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 255,
                                        "title": "\u53d7\u6ce8\u30b9\u30c6\u30fc\u30bf\u30b9\uff08\u5165\u529b\uff09",
                                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    }
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/PUT/admin/order-statusResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            },
            "post": {
                "operationId": "doUpdateOrderStatus",
                "summary": "Wave 7: both `orderNo` and `orderStatus` are admin-form input\n(orderNo selected from the order-list row, orderStatus picked\nfrom a dropdown of dtb_order_status values).",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "orderNo": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 64,
                                        "title": "\u6ce8\u6587\u756a\u53f7\uff08\u5165\u529b\uff09",
                                        "description": "\u9867\u5ba2\u5411\u3051\u306e\u6ce8\u6587\u756a\u53f7\u3002\u30d5\u30a9\u30fc\u30de\u30c3\u30c8\u306f\u30ab\u30b9\u30bf\u30de\u30a4\u30ba\u53ef\u80fd Fake\u89b3\u5bdf\u6587\u5b57\u9577 32\u301c32; \u89b3\u5bdf\u5024 'past0000000000000000000000000001'\u3002",
                                        "example": "past0000000000000000000000000001",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "orderStatus": {
                                        "title": "\u53d7\u6ce8\u30b9\u30c6\u30fc\u30bf\u30b9\uff08\u5165\u529b\uff09",
                                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 Fake\u89b3\u5bdf\u6570\u5024 1\u301c1; \u89b3\u5bdf\u5024 '1'\u3002",
                                        "type": "integer",
                                        "example": 1,
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    }
                                },
                                "required": [
                                    "orderNo",
                                    "orderStatus"
                                ]
                            }
                        }
                    },
                    "required": true
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/POST/admin/order-statusResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/admin/plugin": {
            "delete": {
                "operationId": "doUninstallPlugin",
                "summary": "Wave 8: pluginCode is admin-form input (selected from the grid).",
                "parameters": [
                    {
                        "name": "pluginCode",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "\u30d7\u30e9\u30b0\u30a4\u30f3\u30b3\u30fc\u30c9\uff08\u5165\u529b\uff09 - \u30d7\u30e9\u30b0\u30a4\u30f3\u306e\u4e00\u610f\u8b58\u5225\u5b50\u3002dtb_plugin.code \u306b\u683c\u7d0d\u3059\u308b\u81ea\u7136\u30ad\u30fc \u2014 \u5217\u540d\u306f `code` \u3067\u3042\u3063\u3066 `plugin_code` \u3067\u306f\u306a\u3044\uff08dtb_plugin \u306f EC-CUBE \u5f8c\u767a\u306e dtb_*_code \u547d\u540d\u898f\u7d04\u3088\u308a\u53e4\u3044\uff09\u3002findByCode / install / uninstall / setEnabled \u306e\u5168\u30e9\u30a4\u30d5\u30b5\u30a4\u30af\u30eb\u30e1\u30bd\u30c3\u30c9\u304c\u3053\u306e\u5217\u3092\u30d7\u30ed\u30fc\u30d6\u3059\u308b\u3002dtb_plugin \u306f FK \u5236\u7d04\u3092\u6301\u305f\u306a\u3044\u304c structure-only \u30c0\u30f3\u30d7\u3067\u306f\u7a7a\u306e\u305f\u3081\u3001SQL \u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30c6\u30b9\u30c8\u306f seedPlugins \u30672\u3064\u306e\u30c7\u30e2\u30d7\u30e9\u30b0\u30a4\u30f3\uff08Sample/SamplePlugin, Sample/DisabledPlugin\uff09\u3092\u30b7\u30fc\u30c9\u3059\u308b Fake\u89b3\u5bdf\u6587\u5b57\u9577 19\u301c21; \u89b3\u5bdf\u5024 'Sample/SamplePlugin', 'Sample/DisabledPlugin'\u3002",
                        "example": "Sample/SamplePlugin"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/DELETE/admin/pluginResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/admin/plugin-disable": {
            "post": {
                "operationId": "doDisablePlugin",
                "summary": "ALPS `doDisablePlugin` \u306b\u5bfe\u5fdc\u3059\u308b POST \u64cd\u4f5c\u3002",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "pluginCode": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 128,
                                        "title": "\u30d7\u30e9\u30b0\u30a4\u30f3\u30b3\u30fc\u30c9\uff08\u5165\u529b\uff09",
                                        "description": "\u30d7\u30e9\u30b0\u30a4\u30f3\u306e\u4e00\u610f\u8b58\u5225\u5b50\u3002dtb_plugin.code \u306b\u683c\u7d0d\u3059\u308b\u81ea\u7136\u30ad\u30fc \u2014 \u5217\u540d\u306f `code` \u3067\u3042\u3063\u3066 `plugin_code` \u3067\u306f\u306a\u3044\uff08dtb_plugin \u306f EC-CUBE \u5f8c\u767a\u306e dtb_*_code \u547d\u540d\u898f\u7d04\u3088\u308a\u53e4\u3044\uff09\u3002findByCode / install / uninstall / setEnabled \u306e\u5168\u30e9\u30a4\u30d5\u30b5\u30a4\u30af\u30eb\u30e1\u30bd\u30c3\u30c9\u304c\u3053\u306e\u5217\u3092\u30d7\u30ed\u30fc\u30d6\u3059\u308b\u3002dtb_plugin \u306f FK \u5236\u7d04\u3092\u6301\u305f\u306a\u3044\u304c structure-only \u30c0\u30f3\u30d7\u3067\u306f\u7a7a\u306e\u305f\u3081\u3001SQL \u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30c6\u30b9\u30c8\u306f seedPlugins \u30672\u3064\u306e\u30c7\u30e2\u30d7\u30e9\u30b0\u30a4\u30f3\uff08Sample/SamplePlugin, Sample/DisabledPlugin\uff09\u3092\u30b7\u30fc\u30c9\u3059\u308b Fake\u89b3\u5bdf\u6587\u5b57\u9577 19\u301c21; \u89b3\u5bdf\u5024 'Sample/SamplePlugin', 'Sample/DisabledPlugin'\u3002",
                                        "example": "Sample/SamplePlugin",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    }
                                },
                                "required": [
                                    "pluginCode"
                                ]
                            }
                        }
                    },
                    "required": true
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/POST/admin/plugin-disableResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/admin/plugin-enable": {
            "post": {
                "operationId": "doEnablePlugin",
                "summary": "ALPS `doEnablePlugin` \u306b\u5bfe\u5fdc\u3059\u308b POST \u64cd\u4f5c\u3002",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "pluginCode": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 128,
                                        "title": "\u30d7\u30e9\u30b0\u30a4\u30f3\u30b3\u30fc\u30c9\uff08\u5165\u529b\uff09",
                                        "description": "\u30d7\u30e9\u30b0\u30a4\u30f3\u306e\u4e00\u610f\u8b58\u5225\u5b50\u3002dtb_plugin.code \u306b\u683c\u7d0d\u3059\u308b\u81ea\u7136\u30ad\u30fc \u2014 \u5217\u540d\u306f `code` \u3067\u3042\u3063\u3066 `plugin_code` \u3067\u306f\u306a\u3044\uff08dtb_plugin \u306f EC-CUBE \u5f8c\u767a\u306e dtb_*_code \u547d\u540d\u898f\u7d04\u3088\u308a\u53e4\u3044\uff09\u3002findByCode / install / uninstall / setEnabled \u306e\u5168\u30e9\u30a4\u30d5\u30b5\u30a4\u30af\u30eb\u30e1\u30bd\u30c3\u30c9\u304c\u3053\u306e\u5217\u3092\u30d7\u30ed\u30fc\u30d6\u3059\u308b\u3002dtb_plugin \u306f FK \u5236\u7d04\u3092\u6301\u305f\u306a\u3044\u304c structure-only \u30c0\u30f3\u30d7\u3067\u306f\u7a7a\u306e\u305f\u3081\u3001SQL \u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30c6\u30b9\u30c8\u306f seedPlugins \u30672\u3064\u306e\u30c7\u30e2\u30d7\u30e9\u30b0\u30a4\u30f3\uff08Sample/SamplePlugin, Sample/DisabledPlugin\uff09\u3092\u30b7\u30fc\u30c9\u3059\u308b Fake\u89b3\u5bdf\u6587\u5b57\u9577 19\u301c21; \u89b3\u5bdf\u5024 'Sample/SamplePlugin', 'Sample/DisabledPlugin'\u3002",
                                        "example": "Sample/SamplePlugin",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    }
                                },
                                "required": [
                                    "pluginCode"
                                ]
                            }
                        }
                    },
                    "required": true
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/POST/admin/plugin-enableResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/admin/plugin-list": {
            "get": {
                "operationId": "goPluginList",
                "summary": "ALPS `goPluginList` \u306b\u5bfe\u5fdc\u3059\u308b GET \u64cd\u4f5c\u3002",
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/admin/plugin-listResponse"
                                }
                            }
                        }
                    }
                }
            },
            "post": {
                "operationId": "doInstallPlugin",
                "summary": "Wave 8: every form field is admin-form input.",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "pluginCode": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 128,
                                        "title": "\u30d7\u30e9\u30b0\u30a4\u30f3\u30b3\u30fc\u30c9\uff08\u5165\u529b\uff09",
                                        "description": "\u30d7\u30e9\u30b0\u30a4\u30f3\u306e\u4e00\u610f\u8b58\u5225\u5b50\u3002dtb_plugin.code \u306b\u683c\u7d0d\u3059\u308b\u81ea\u7136\u30ad\u30fc \u2014 \u5217\u540d\u306f `code` \u3067\u3042\u3063\u3066 `plugin_code` \u3067\u306f\u306a\u3044\uff08dtb_plugin \u306f EC-CUBE \u5f8c\u767a\u306e dtb_*_code \u547d\u540d\u898f\u7d04\u3088\u308a\u53e4\u3044\uff09\u3002findByCode / install / uninstall / setEnabled \u306e\u5168\u30e9\u30a4\u30d5\u30b5\u30a4\u30af\u30eb\u30e1\u30bd\u30c3\u30c9\u304c\u3053\u306e\u5217\u3092\u30d7\u30ed\u30fc\u30d6\u3059\u308b\u3002dtb_plugin \u306f FK \u5236\u7d04\u3092\u6301\u305f\u306a\u3044\u304c structure-only \u30c0\u30f3\u30d7\u3067\u306f\u7a7a\u306e\u305f\u3081\u3001SQL \u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30c6\u30b9\u30c8\u306f seedPlugins \u30672\u3064\u306e\u30c7\u30e2\u30d7\u30e9\u30b0\u30a4\u30f3\uff08Sample/SamplePlugin, Sample/DisabledPlugin\uff09\u3092\u30b7\u30fc\u30c9\u3059\u308b Fake\u89b3\u5bdf\u6587\u5b57\u9577 19\u301c21; \u89b3\u5bdf\u5024 'Sample/SamplePlugin', 'Sample/DisabledPlugin'\u3002",
                                        "example": "Sample/SamplePlugin",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "pluginName": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 128,
                                        "title": "\u30d7\u30e9\u30b0\u30a4\u30f3\u540d\uff08\u5165\u529b\uff09",
                                        "description": "\u30d7\u30e9\u30b0\u30a4\u30f3\u306e\u8868\u793a\u540d\u3002dtb_plugin.name \u306b\u683c\u7d0d\u3002PluginEntity \u306e pluginName \u306b\u5bfe\u5fdc Fake\u89b3\u5bdf\u6587\u5b57\u9577 13\u301c22; \u89b3\u5bdf\u5024 'Sample Plugin', 'Disabled Sample Plugin'\u3002",
                                        "example": "Sample Plugin",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "pluginVersion": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 255,
                                        "title": "\u30d7\u30e9\u30b0\u30a4\u30f3\u30d0\u30fc\u30b8\u30e7\u30f3\uff08\u5165\u529b\uff09",
                                        "description": "\u30d7\u30e9\u30b0\u30a4\u30f3\u306e\u30d0\u30fc\u30b8\u30e7\u30f3\u6587\u5b57\u5217\u3002dtb_plugin.version \u306b\u683c\u7d0d\u3002PluginEntity \u306e version \u306b\u5bfe\u5fdc",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    }
                                },
                                "required": [
                                    "pluginCode",
                                    "pluginName",
                                    "pluginVersion"
                                ]
                            }
                        }
                    },
                    "required": true
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/POST/admin/plugin-listResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/admin/product": {
            "get": {
                "operationId": "goProduct",
                "summary": "goProduct (admin variant) \u2014 fetch full product detail.",
                "parameters": [
                    {
                        "name": "productCode",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "\u5546\u54c1\u30b3\u30fc\u30c9\uff08\u5165\u529b\uff09 - SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 \u5546\u54c1\u3092\u8b58\u5225\u3059\u308bSKU\u3002Fake corpus\u3067\u306fASCII\u82f1\u6570\u30fb\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3067\u3001\u53d7\u6ce8\u660e\u7d30/\u30ab\u30fc\u30c8\u660e\u7d30\u306e\u7d50\u5408\u30ad\u30fc\u306b\u306a\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c26\u3002",
                        "example": "sample-001"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/admin/productResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            },
            "post": {
                "operationId": "doCreateProduct",
                "summary": "doCreateProduct \u2014 create a new product.",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "productCode": {
                                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9\uff08\u5165\u529b\uff09",
                                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 \u5546\u54c1\u3092\u8b58\u5225\u3059\u308bSKU\u3002Fake corpus\u3067\u306fASCII\u82f1\u6570\u30fb\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3067\u3001\u53d7\u6ce8\u660e\u7d30/\u30ab\u30fc\u30c8\u660e\u7d30\u306e\u7d50\u5408\u30ad\u30fc\u306b\u306a\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c26\u3002",
                                        "type": "string",
                                        "minLength": 0,
                                        "maxLength": 64,
                                        "example": "sample-001",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "productName": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 128,
                                        "title": "\u5546\u54c1\u540d\uff08\u5165\u529b\uff09",
                                        "description": "\u5546\u54c1\u306e\u8868\u793a\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 6\u301c17\u3002",
                                        "example": "\u30b5\u30f3\u30d7\u30eb\u5546\u54c1 A",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "price02": {
                                        "title": "\u8ca9\u58f2\u4fa1\u683c\uff08\u5165\u529b\uff09",
                                        "description": "\u5b9f\u969b\u306e\u8ca9\u58f2\u4fa1\u683c\uff08\u7a0e\u629c\uff09\u3002\u7a0e\u8a08\u7b97\u30fb\u5c0f\u8a08\u8a08\u7b97\u306e\u30d9\u30fc\u30b9 Fake\u89b3\u5bdf\u6570\u5024 800\u301c28000\u3002",
                                        "type": [
                                            "integer",
                                            "string",
                                            "null"
                                        ],
                                        "example": "3500",
                                        "$comment": "\u8ca9\u58f2\u4fa1\u683c\uff08\u5165\u529b\uff09\u306f\u672c\u6765\u6570\u5024/\u5217\u6319\u306e\u696d\u52d9\u5024\u3060\u304c\u3001HTTP\u30d5\u30a9\u30fc\u30e0\u3067\u306f\u6587\u5b57\u5217\u3068\u3057\u3066\u5c4a\u304f\u3002Resource/Semantic\u5c64\u306e400\u5fdc\u7b54\u3092\u596a\u308f\u306a\u3044\u305f\u3081transport schema\u3067\u306f\u6587\u5b57\u5217\u5165\u529b\u3092\u8a31\u5bb9\u3059\u308b\u3002 Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "stock": {
                                        "type": [
                                            "integer",
                                            "null"
                                        ],
                                        "title": "\u5728\u5eab\u6570\uff08\u5165\u529b\uff09",
                                        "description": "\u7269\u7406\u5728\u5eab\u6570\u3002stockUnlimited=true\u306e\u5834\u5408\u306f\u7121\u8996\u3055\u308c\u308b\u3002\u6ce8\u6587\u78ba\u5b9a\u6642\u306b\u5f15\u304d\u5f53\u3066\u304c\u884c\u308f\u308c\u308b Fake\u89b3\u5bdf\u6570\u5024 0\u301c100; \u89b3\u5bdf\u5024 '0', '10', '20', '50', '5', '7', '100', '3'; null 9/73\u3002",
                                        "example": 0,
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "productStatus": {
                                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9\uff08\u5165\u529b\uff09",
                                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09 Fake\u89b3\u5bdf\u6570\u5024 1\u301c3; \u89b3\u5bdf\u5024 '1', '2', '3'\u3002",
                                        "type": [
                                            "integer",
                                            "string",
                                            "null"
                                        ],
                                        "example": "1",
                                        "$comment": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9\uff08\u5165\u529b\uff09\u306f\u672c\u6765\u6570\u5024/\u5217\u6319\u306e\u696d\u52d9\u5024\u3060\u304c\u3001HTTP\u30d5\u30a9\u30fc\u30e0\u3067\u306f\u6587\u5b57\u5217\u3068\u3057\u3066\u5c4a\u304f\u3002Resource/Semantic\u5c64\u306e400\u5fdc\u7b54\u3092\u596a\u308f\u306a\u3044\u305f\u3081transport schema\u3067\u306f\u6587\u5b57\u5217\u5165\u529b\u3092\u8a31\u5bb9\u3059\u308b\u3002 Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "description": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 128,
                                        "title": "\u8a73\u7d30\u8aac\u660e\u6587\uff08\u5165\u529b\uff09",
                                        "description": "\u5546\u54c1\u8a73\u7d30\u30da\u30fc\u30b8\u306b\u8868\u793a\u3059\u308b\u8aac\u660e\u6587 Fake\u89b3\u5bdf\u6587\u5b57\u9577 12\u301c32; \u89b3\u5bdf\u5024 'Stock-unlimited fixture', 'Wave 8 admin grid: visible row', 'Wave 8 admin grid: hidden row', 'Wave 8 admin grid: withdrawn row', '\u7ba1\u7406\u753b\u9762\u304b\u3089\u540d\u79f0\u5909\u66f4\u3057\u305f\u3001\u5f69\u308a\u8c4a\u304b\u306a\u30b8\u30a7\u30e9\u30fc\u30c8\u30bb\u30c3\u30c8\u3067\u3059\u3002', '\u7ba1\u7406\u753b\u9762\u304b\u3089\u4f5c\u6210\u3057\u305f\u5546\u54c1'; null 1/7\u3002",
                                        "example": "Stock-unlimited fixture",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "searchWord": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 1000,
                                        "title": "\u691c\u7d22\u30ef\u30fc\u30c9\uff08\u5165\u529b\uff09",
                                        "description": "\u30d5\u30ed\u30f3\u30c8\u691c\u7d22\u3067\u30d2\u30c3\u30c8\u3055\u305b\u308b\u305f\u3081\u306e\u30ad\u30fc\u30ef\u30fc\u30c9\u3002\u753b\u9762\u306b\u306f\u8868\u793a\u3055\u308c\u306a\u3044\u691c\u7d22\u88dc\u52a9\u30c7\u30fc\u30bf Fake\u89b3\u5bdf\u6587\u5b57\u9577 9\u301c15; \u89b3\u5bdf\u5024 '\u7ba1\u7406 active', '\u7ba1\u7406 withdrawn', '\u7ba1\u7406 hidden', '\u30b8\u30a7\u30e9\u30fc\u30c8 \u30ae\u30d5\u30c8 \u5f69 api', 'ui create'; null 10/42\u3002",
                                        "example": "\u7ba1\u7406 active",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "note": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 1000,
                                        "title": "\u5546\u54c1\u5099\u8003\uff08\u5165\u529b\uff09",
                                        "description": "\u7ba1\u7406\u8005\u306e\u307f\u304c\u53c2\u7167\u3059\u308b\u5185\u90e8\u30e1\u30e2\u3002\u30d5\u30ed\u30f3\u30c8\u306b\u306f\u8868\u793a\u3055\u308c\u306a\u3044 Fake\u89b3\u5bdf\u6587\u5b57\u9577 11\u301c25; \u89b3\u5bdf\u5024 'internal note A', 'internal note C', 'internal note B', '\u7ba1\u7406\u753b\u9762\u540d\u79f0\u5909\u66f4 smoke 2026-05-23', 'Codex smoke'; null 10/42\u3002",
                                        "example": "internal note A",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    }
                                },
                                "required": [
                                    "productCode",
                                    "productName",
                                    "price02"
                                ]
                            }
                        }
                    },
                    "required": true
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/POST/admin/productResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            },
            "put": {
                "operationId": "doUpdateProduct",
                "summary": "doUpdateProduct \u2014 edit an existing product (partial overwrite).",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "productCode": {
                                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9\uff08\u5165\u529b\uff09",
                                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 \u5546\u54c1\u3092\u8b58\u5225\u3059\u308bSKU\u3002Fake corpus\u3067\u306fASCII\u82f1\u6570\u30fb\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3067\u3001\u53d7\u6ce8\u660e\u7d30/\u30ab\u30fc\u30c8\u660e\u7d30\u306e\u7d50\u5408\u30ad\u30fc\u306b\u306a\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c26\u3002",
                                        "type": "string",
                                        "minLength": 0,
                                        "maxLength": 64,
                                        "example": "sample-001",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "productName": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 128,
                                        "title": "\u5546\u54c1\u540d\uff08\u5165\u529b\uff09",
                                        "description": "\u5546\u54c1\u306e\u8868\u793a\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 6\u301c17\u3002",
                                        "example": "\u30b5\u30f3\u30d7\u30eb\u5546\u54c1 A",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "price02": {
                                        "title": "\u8ca9\u58f2\u4fa1\u683c\uff08\u5165\u529b\uff09",
                                        "description": "\u5b9f\u969b\u306e\u8ca9\u58f2\u4fa1\u683c\uff08\u7a0e\u629c\uff09\u3002\u7a0e\u8a08\u7b97\u30fb\u5c0f\u8a08\u8a08\u7b97\u306e\u30d9\u30fc\u30b9 Fake\u89b3\u5bdf\u6570\u5024 800\u301c28000\u3002",
                                        "type": [
                                            "integer",
                                            "string",
                                            "null"
                                        ],
                                        "example": "3500",
                                        "$comment": "\u8ca9\u58f2\u4fa1\u683c\uff08\u5165\u529b\uff09\u306f\u672c\u6765\u6570\u5024/\u5217\u6319\u306e\u696d\u52d9\u5024\u3060\u304c\u3001HTTP\u30d5\u30a9\u30fc\u30e0\u3067\u306f\u6587\u5b57\u5217\u3068\u3057\u3066\u5c4a\u304f\u3002Resource/Semantic\u5c64\u306e400\u5fdc\u7b54\u3092\u596a\u308f\u306a\u3044\u305f\u3081transport schema\u3067\u306f\u6587\u5b57\u5217\u5165\u529b\u3092\u8a31\u5bb9\u3059\u308b\u3002 Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "stock": {
                                        "type": [
                                            "integer",
                                            "null"
                                        ],
                                        "title": "\u5728\u5eab\u6570\uff08\u5165\u529b\uff09",
                                        "description": "\u7269\u7406\u5728\u5eab\u6570\u3002stockUnlimited=true\u306e\u5834\u5408\u306f\u7121\u8996\u3055\u308c\u308b\u3002\u6ce8\u6587\u78ba\u5b9a\u6642\u306b\u5f15\u304d\u5f53\u3066\u304c\u884c\u308f\u308c\u308b Fake\u89b3\u5bdf\u6570\u5024 0\u301c100; \u89b3\u5bdf\u5024 '0', '10', '20', '50', '5', '7', '100', '3'; null 9/73\u3002",
                                        "example": 0,
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "productStatus": {
                                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9\uff08\u5165\u529b\uff09",
                                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09 Fake\u89b3\u5bdf\u6570\u5024 1\u301c3; \u89b3\u5bdf\u5024 '1', '2', '3'\u3002",
                                        "type": [
                                            "integer",
                                            "string",
                                            "null"
                                        ],
                                        "example": "1",
                                        "$comment": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9\uff08\u5165\u529b\uff09\u306f\u672c\u6765\u6570\u5024/\u5217\u6319\u306e\u696d\u52d9\u5024\u3060\u304c\u3001HTTP\u30d5\u30a9\u30fc\u30e0\u3067\u306f\u6587\u5b57\u5217\u3068\u3057\u3066\u5c4a\u304f\u3002Resource/Semantic\u5c64\u306e400\u5fdc\u7b54\u3092\u596a\u308f\u306a\u3044\u305f\u3081transport schema\u3067\u306f\u6587\u5b57\u5217\u5165\u529b\u3092\u8a31\u5bb9\u3059\u308b\u3002 Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "description": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 128,
                                        "title": "\u8a73\u7d30\u8aac\u660e\u6587\uff08\u5165\u529b\uff09",
                                        "description": "\u5546\u54c1\u8a73\u7d30\u30da\u30fc\u30b8\u306b\u8868\u793a\u3059\u308b\u8aac\u660e\u6587 Fake\u89b3\u5bdf\u6587\u5b57\u9577 12\u301c32; \u89b3\u5bdf\u5024 'Stock-unlimited fixture', 'Wave 8 admin grid: visible row', 'Wave 8 admin grid: hidden row', 'Wave 8 admin grid: withdrawn row', '\u7ba1\u7406\u753b\u9762\u304b\u3089\u540d\u79f0\u5909\u66f4\u3057\u305f\u3001\u5f69\u308a\u8c4a\u304b\u306a\u30b8\u30a7\u30e9\u30fc\u30c8\u30bb\u30c3\u30c8\u3067\u3059\u3002', '\u7ba1\u7406\u753b\u9762\u304b\u3089\u4f5c\u6210\u3057\u305f\u5546\u54c1'; null 1/7\u3002",
                                        "example": "Stock-unlimited fixture",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "searchWord": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 1000,
                                        "title": "\u691c\u7d22\u30ef\u30fc\u30c9\uff08\u5165\u529b\uff09",
                                        "description": "\u30d5\u30ed\u30f3\u30c8\u691c\u7d22\u3067\u30d2\u30c3\u30c8\u3055\u305b\u308b\u305f\u3081\u306e\u30ad\u30fc\u30ef\u30fc\u30c9\u3002\u753b\u9762\u306b\u306f\u8868\u793a\u3055\u308c\u306a\u3044\u691c\u7d22\u88dc\u52a9\u30c7\u30fc\u30bf Fake\u89b3\u5bdf\u6587\u5b57\u9577 9\u301c15; \u89b3\u5bdf\u5024 '\u7ba1\u7406 active', '\u7ba1\u7406 withdrawn', '\u7ba1\u7406 hidden', '\u30b8\u30a7\u30e9\u30fc\u30c8 \u30ae\u30d5\u30c8 \u5f69 api', 'ui create'; null 10/42\u3002",
                                        "example": "\u7ba1\u7406 active",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "note": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 1000,
                                        "title": "\u5546\u54c1\u5099\u8003\uff08\u5165\u529b\uff09",
                                        "description": "\u7ba1\u7406\u8005\u306e\u307f\u304c\u53c2\u7167\u3059\u308b\u5185\u90e8\u30e1\u30e2\u3002\u30d5\u30ed\u30f3\u30c8\u306b\u306f\u8868\u793a\u3055\u308c\u306a\u3044 Fake\u89b3\u5bdf\u6587\u5b57\u9577 11\u301c25; \u89b3\u5bdf\u5024 'internal note A', 'internal note C', 'internal note B', '\u7ba1\u7406\u753b\u9762\u540d\u79f0\u5909\u66f4 smoke 2026-05-23', 'Codex smoke'; null 10/42\u3002",
                                        "example": "internal note A",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    }
                                },
                                "required": [
                                    "productCode"
                                ]
                            }
                        }
                    },
                    "required": true
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/PUT/admin/productResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            },
            "delete": {
                "operationId": "doDeleteProduct",
                "summary": "doDeleteProduct \u2014 soft-delete (status=3). Idempotent replay\nsurfaces `alreadyDeleted=true`.",
                "parameters": [
                    {
                        "name": "productCode",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "\u5546\u54c1\u30b3\u30fc\u30c9\uff08\u5165\u529b\uff09 - SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 \u5546\u54c1\u3092\u8b58\u5225\u3059\u308bSKU\u3002Fake corpus\u3067\u306fASCII\u82f1\u6570\u30fb\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3067\u3001\u53d7\u6ce8\u660e\u7d30/\u30ab\u30fc\u30c8\u660e\u7d30\u306e\u7d50\u5408\u30ad\u30fc\u306b\u306a\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c26\u3002",
                        "example": "sample-001"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/DELETE/admin/productResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/admin/product-bulk-status": {
            "post": {
                "operationId": "doBulkUpdateProductStatus",
                "summary": "ALPS `doBulkUpdateProductStatus` \u306b\u5bfe\u5fdc\u3059\u308b POST \u64cd\u4f5c\u3002",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "productCodes": {
                                        "type": "array",
                                        "title": "\u53d6\u8fbc\u5546\u54c1\u30b3\u30fc\u30c9\u4e00\u89a7",
                                        "description": "\u5546\u54c1CSV\u53d6\u8fbc\u3067\u51e6\u7406\u5bfe\u8c61\u306b\u306a\u3063\u305fSKU\u4e00\u89a7\u3002\u5404\u8981\u7d20\u306f\u5546\u54c1\u30b3\u30fc\u30c9\u5236\u7d04\u306b\u5f93\u3046\u3002",
                                        "items": {
                                            "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                                            "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                                            "type": "string",
                                            "minLength": 0,
                                            "maxLength": 64,
                                            "example": "sample-001",
                                            "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                        },
                                        "minItems": 0,
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "productStatus": {
                                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9\uff08\u5165\u529b\uff09",
                                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09 Fake\u89b3\u5bdf\u6570\u5024 1\u301c3; \u89b3\u5bdf\u5024 '1', '2', '3'\u3002",
                                        "type": [
                                            "integer",
                                            "string",
                                            "null"
                                        ],
                                        "example": "1",
                                        "$comment": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9\uff08\u5165\u529b\uff09\u306f\u672c\u6765\u6570\u5024/\u5217\u6319\u306e\u696d\u52d9\u5024\u3060\u304c\u3001HTTP\u30d5\u30a9\u30fc\u30e0\u3067\u306f\u6587\u5b57\u5217\u3068\u3057\u3066\u5c4a\u304f\u3002Resource/Semantic\u5c64\u306e400\u5fdc\u7b54\u3092\u596a\u308f\u306a\u3044\u305f\u3081transport schema\u3067\u306f\u6587\u5b57\u5217\u5165\u529b\u3092\u8a31\u5bb9\u3059\u308b\u3002 Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    }
                                },
                                "required": [
                                    "productCodes",
                                    "productStatus"
                                ]
                            }
                        }
                    },
                    "required": true
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/POST/admin/product-bulk-statusResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/admin/product-copy": {
            "post": {
                "operationId": "doCopyProduct",
                "summary": "ALPS `doCopyProduct` \u306b\u5bfe\u5fdc\u3059\u308b POST \u64cd\u4f5c\u3002",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "productCode": {
                                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9\uff08\u5165\u529b\uff09",
                                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 \u5546\u54c1\u3092\u8b58\u5225\u3059\u308bSKU\u3002Fake corpus\u3067\u306fASCII\u82f1\u6570\u30fb\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3067\u3001\u53d7\u6ce8\u660e\u7d30/\u30ab\u30fc\u30c8\u660e\u7d30\u306e\u7d50\u5408\u30ad\u30fc\u306b\u306a\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c26\u3002",
                                        "type": "string",
                                        "minLength": 0,
                                        "maxLength": 64,
                                        "example": "sample-001",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "newProductCode": {
                                        "title": "\u51e6\u7406\u8b58\u5225\u5b50\uff08\u5165\u529b\uff09",
                                        "description": "/admin/product-copy \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u51e6\u7406\u8b58\u5225\u5b50\u3002ALPS\u3001Fake\u89b3\u5bdf\u3001Resource\u5883\u754c\u306e\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305f\u696d\u52d9\u5951\u7d04\u3002",
                                        "type": "string",
                                        "minLength": 0,
                                        "maxLength": 64,
                                        "example": "sample-001",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    }
                                },
                                "required": [
                                    "productCode",
                                    "newProductCode"
                                ]
                            }
                        }
                    },
                    "required": true
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/POST/admin/product-copyResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/admin/product-csv": {
            "get": {
                "operationId": "goExportProduct",
                "summary": "ALPS `goExportProduct` \u306b\u5bfe\u5fdc\u3059\u308b GET \u64cd\u4f5c\u3002",
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/admin/product-csvResponse"
                                }
                            }
                        }
                    }
                }
            },
            "post": {
                "operationId": "doCreateProduct",
                "summary": "ALPS `doCreateProduct` \u306b\u5bfe\u5fdc\u3059\u308b POST \u64cd\u4f5c\u3002",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "csv": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 5000000,
                                        "$comment": "CSV\u5217\u306e\u696d\u52d9\u59a5\u5f53\u6027\u306fCSV\u4e92\u63db\u30b5\u30fc\u30d3\u30b9\u3067\u691c\u67fb\u3059\u308b\u3002\u3053\u3053\u3067\u306fJSON\u5883\u754c\u4e0a\u306e\u6587\u5b57\u5217\u30b5\u30a4\u30ba\u3092\u5951\u7d04\u3059\u308b\u3002 Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation.",
                                        "title": "\u8f38\u9001\u30da\u30a4\u30ed\u30fc\u30c9\uff08\u5165\u529b\uff09",
                                        "description": "CSV\u30a4\u30f3\u30dd\u30fc\u30c8/\u30a8\u30af\u30b9\u30dd\u30fc\u30c8\u672c\u6587\u3002\u5217\u69cb\u9020\u306e\u8a73\u7d30\u306fCSV\u4e92\u63db\u30b5\u30fc\u30d3\u30b9\u5883\u754c\u3067\u691c\u67fb\u3059\u308b\u3002"
                                    }
                                },
                                "required": [
                                    "csv"
                                ]
                            }
                        }
                    },
                    "required": true
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/POST/admin/product-csvResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/admin/product-list": {
            "get": {
                "operationId": "goProductList",
                "summary": "ALPS `goProductList` \u306b\u5bfe\u5fdc\u3059\u308b GET \u64cd\u4f5c\u3002",
                "parameters": [
                    {
                        "name": "nameKeyword",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string"
                        },
                        "description": "\u540d\u524d\u691c\u7d22\u30ad\u30fc\u30ef\u30fc\u30c9 - /admin/product-list \u306e\u691c\u7d22\u6761\u4ef6\u3002\u5546\u54c1\u540d\u30fb\u4f1a\u54e1\u540d\u30fb\u7ba1\u7406\u8005\u540d\u306a\u3069\u3001\u3053\u306e\u4e00\u89a7\u753b\u9762\u3067\u540d\u524d\u3068\u3057\u3066\u6271\u3046\u8868\u793a\u540d\u3092\u90e8\u5206\u4e00\u81f4\u691c\u7d22\u3059\u308b\u3002",
                        "example": "\u9234\u6728"
                    },
                    {
                        "name": "limit",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        },
                        "description": "\u8868\u793a\u4ef6\u6570\uff08\u5165\u529b\uff09 - /admin/product-list \u306e\u4e00\u89a7\u8868\u793a\u3092\u5236\u5fa1\u3059\u308b\u30da\u30fc\u30b8\u30f3\u30b0/\u691c\u7d22\u6761\u4ef6\u3002\u4ef6\u6570\u3001\u958b\u59cb\u4f4d\u7f6e\u3001\u4e26\u3073\u9806\u3001\u524d\u5f8c\u30ea\u30f3\u30af\u3092\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u304c\u518d\u73fe\u3059\u308b\u305f\u3081\u306e\u5024\u3002"
                    },
                    {
                        "name": "offset",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        },
                        "description": "\u958b\u59cb\u4f4d\u7f6e\uff08\u5165\u529b\uff09 - /admin/product-list \u306e\u4e00\u89a7\u8868\u793a\u3092\u5236\u5fa1\u3059\u308b\u30da\u30fc\u30b8\u30f3\u30b0/\u691c\u7d22\u6761\u4ef6\u3002\u4ef6\u6570\u3001\u958b\u59cb\u4f4d\u7f6e\u3001\u4e26\u3073\u9806\u3001\u524d\u5f8c\u30ea\u30f3\u30af\u3092\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u304c\u518d\u73fe\u3059\u308b\u305f\u3081\u306e\u5024\u3002"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/admin/product-listResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/admin/product-new": {
            "get": {
                "operationId": "doCreateProduct",
                "summary": "ALPS `doCreateProduct` \u306b\u5bfe\u5fdc\u3059\u308b GET \u64cd\u4f5c\u3002",
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/admin/product-newResponse"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/admin/security": {
            "get": {
                "operationId": "doUpdateSecurity",
                "summary": "ALPS `doUpdateSecurity` \u306b\u5bfe\u5fdc\u3059\u308b GET \u64cd\u4f5c\u3002",
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/admin/securityResponse"
                                }
                            }
                        }
                    }
                }
            },
            "put": {
                "operationId": "doUpdateSecurity",
                "summary": "Updates the security settings (doUpdateSecurity). ALPS marks this\n`idempotent` \u2192 PUT.",
                "description": "Failure mapping:\n- Invalid CSRF                     \u2192 403 (interceptor)\n- SemanticVariableException        \u2192 400\n- UnauthorizedAdminAccessException \u2192 403 (no admin session)",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "adminAllowHosts": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 255,
                                        "title": "\u51e6\u7406\u4e00\u89a7\uff08\u5165\u529b\uff09",
                                        "description": "/admin/security \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u51e6\u7406\u4e00\u89a7\u3002ALPS\u3001Fake\u89b3\u5bdf\u3001Resource\u5883\u754c\u306e\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305f\u696d\u52d9\u5951\u7d04\u3002",
                                        "default": "",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "adminDenyHosts": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 255,
                                        "title": "\u51e6\u7406\u4e00\u89a7\uff08\u5165\u529b\uff09",
                                        "description": "/admin/security \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u51e6\u7406\u4e00\u89a7\u3002ALPS\u3001Fake\u89b3\u5bdf\u3001Resource\u5883\u754c\u306e\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305f\u696d\u52d9\u5951\u7d04\u3002",
                                        "default": "",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "frontAllowHosts": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 255,
                                        "title": "\u51e6\u7406\u4e00\u89a7\uff08\u5165\u529b\uff09",
                                        "description": "/admin/security \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u51e6\u7406\u4e00\u89a7\u3002ALPS\u3001Fake\u89b3\u5bdf\u3001Resource\u5883\u754c\u306e\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305f\u696d\u52d9\u5951\u7d04\u3002",
                                        "default": "",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "frontDenyHosts": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 255,
                                        "title": "\u51e6\u7406\u4e00\u89a7\uff08\u5165\u529b\uff09",
                                        "description": "/admin/security \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u51e6\u7406\u4e00\u89a7\u3002ALPS\u3001Fake\u89b3\u5bdf\u3001Resource\u5883\u754c\u306e\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305f\u696d\u52d9\u5951\u7d04\u3002",
                                        "default": "",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "trustedHosts": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 255,
                                        "title": "\u51e6\u7406\u4e00\u89a7\uff08\u5165\u529b\uff09",
                                        "description": "/admin/security \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u51e6\u7406\u4e00\u89a7\u3002ALPS\u3001Fake\u89b3\u5bdf\u3001Resource\u5883\u754c\u306e\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305f\u696d\u52d9\u5951\u7d04\u3002",
                                        "default": "",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    }
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/PUT/admin/securityResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/admin/sort-no-move": {
            "put": {
                "operationId": "doSortNoMove",
                "summary": "ALPS `doSortNoMove` \u306b\u5bfe\u5fdc\u3059\u308b PUT \u64cd\u4f5c\u3002",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "masterType": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 255,
                                        "title": "\u30de\u30b9\u30bf\u7a2e\u5225\uff08\u5165\u529b\uff09",
                                        "description": "/admin/sort-no-move \u306e\u51e6\u7406\u6587\u8108\u304b\u3089\u6d3e\u751f\u3057\u305f\u30de\u30b9\u30bf\u7a2e\u5225\u3002ALPS\u57fa\u790e\u8a9e\u3060\u3051\u3067\u306f\u5358\u4f4d\u3084\u7528\u9014\u304c\u4e0d\u8db3\u3059\u308b\u305f\u3081\u3001\u3053\u306eResource\u4e0a\u306e\u610f\u5473\u3092\u660e\u793a\u3059\u308b\u3002",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "rowId": {
                                        "type": [
                                            "string",
                                            "integer",
                                            "null"
                                        ],
                                        "title": "\u884cID\uff08\u5165\u529b\uff09",
                                        "description": "/admin/sort-no-move \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u5bfe\u8c61\u3092\u8b58\u5225\u3059\u308b\u884cID\u3002DB\u63a1\u756aID\u3001Fake\u6587\u5b57\u5217ID\u3001\u4e92\u63db\u5883\u754cID\u306e\u3069\u308c\u306b\u8a72\u5f53\u3059\u308b\u304b\u3092schema\u306e\u578b\u3068\u30b3\u30e1\u30f3\u30c8\u3067\u5206\u3051\u308b\u3002",
                                        "minLength": 0,
                                        "maxLength": 128,
                                        "$comment": "\u884cID\uff08\u5165\u529b\uff09\u306f\u696d\u52d9\u4e0aID\u3060\u304c\u3001HTTP\u30d5\u30a9\u30fc\u30e0\u3067\u306f\u6587\u5b57\u5217\u3068\u3057\u3066\u5c4a\u304f\u3002Resource/Semantic\u5c64\u306e\u691c\u8a3c\u3092\u901a\u3059\u305f\u3081transport schema\u3067\u306fstring|integer\u3092\u8a31\u5bb9\u3059\u308b\u3002 Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "sortNo": {
                                        "type": [
                                            "integer",
                                            "null"
                                        ],
                                        "title": "\u8868\u793a\u9806\uff08\u5165\u529b\uff09",
                                        "description": "\u4e00\u89a7\u306b\u304a\u3051\u308b\u4e26\u3073\u9806 Fake\u89b3\u5bdf\u6570\u5024 1\u301c20; \u89b3\u5bdf\u5024 '1', '3', '2', '4', '10', '20'\u3002",
                                        "example": 1,
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    }
                                },
                                "required": [
                                    "masterType",
                                    "rowId",
                                    "sortNo"
                                ]
                            }
                        }
                    },
                    "required": true
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/PUT/admin/sort-no-moveResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/admin/system": {
            "get": {
                "operationId": "goSystemInfo",
                "summary": "ALPS `goSystemInfo` \u306b\u5bfe\u5fdc\u3059\u308b GET \u64cd\u4f5c\u3002",
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/admin/systemResponse"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/admin/toggle-visible": {
            "put": {
                "operationId": "doToggleVisible",
                "summary": "ALPS `doToggleVisible` \u306b\u5bfe\u5fdc\u3059\u308b PUT \u64cd\u4f5c\u3002",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "masterType": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 255,
                                        "title": "\u30de\u30b9\u30bf\u7a2e\u5225\uff08\u5165\u529b\uff09",
                                        "description": "/admin/toggle-visible \u306e\u51e6\u7406\u6587\u8108\u304b\u3089\u6d3e\u751f\u3057\u305f\u30de\u30b9\u30bf\u7a2e\u5225\u3002ALPS\u57fa\u790e\u8a9e\u3060\u3051\u3067\u306f\u5358\u4f4d\u3084\u7528\u9014\u304c\u4e0d\u8db3\u3059\u308b\u305f\u3081\u3001\u3053\u306eResource\u4e0a\u306e\u610f\u5473\u3092\u660e\u793a\u3059\u308b\u3002",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "rowId": {
                                        "type": [
                                            "string",
                                            "integer",
                                            "null"
                                        ],
                                        "title": "\u884cID\uff08\u5165\u529b\uff09",
                                        "description": "/admin/toggle-visible \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u5bfe\u8c61\u3092\u8b58\u5225\u3059\u308b\u884cID\u3002DB\u63a1\u756aID\u3001Fake\u6587\u5b57\u5217ID\u3001\u4e92\u63db\u5883\u754cID\u306e\u3069\u308c\u306b\u8a72\u5f53\u3059\u308b\u304b\u3092schema\u306e\u578b\u3068\u30b3\u30e1\u30f3\u30c8\u3067\u5206\u3051\u308b\u3002",
                                        "minLength": 0,
                                        "maxLength": 128,
                                        "$comment": "\u884cID\uff08\u5165\u529b\uff09\u306f\u696d\u52d9\u4e0aID\u3060\u304c\u3001HTTP\u30d5\u30a9\u30fc\u30e0\u3067\u306f\u6587\u5b57\u5217\u3068\u3057\u3066\u5c4a\u304f\u3002Resource/Semantic\u5c64\u306e\u691c\u8a3c\u3092\u901a\u3059\u305f\u3081transport schema\u3067\u306fstring|integer\u3092\u8a31\u5bb9\u3059\u308b\u3002 Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "visible": {
                                        "type": [
                                            "boolean",
                                            "null"
                                        ],
                                        "title": "\u51e6\u7406\u72b6\u614b\u30d5\u30e9\u30b0\uff08\u5165\u529b\uff09",
                                        "description": "\u89b3\u5bdf\u5024 'true'\u3002",
                                        "example": "true",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    }
                                },
                                "required": [
                                    "masterType",
                                    "rowId",
                                    "visible"
                                ]
                            }
                        }
                    },
                    "required": true
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/PUT/admin/toggle-visibleResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/admin/trade-law": {
            "get": {
                "operationId": "goTradeLawList",
                "summary": "Wave 9\u03b9: goTradeLawList \u2014 admin views the current TradeLaw body.",
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/admin/trade-lawResponse"
                                }
                            }
                        }
                    }
                }
            },
            "post": {
                "operationId": "doUpdateTradeLaw",
                "summary": "ALPS `doUpdateTradeLaw` \u306b\u5bfe\u5fdc\u3059\u308b POST \u64cd\u4f5c\u3002",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "tradeLawBody": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 65535,
                                        "title": "\u7279\u5b9a\u5546\u53d6\u5f15\u6cd5\u672c\u6587\uff08\u5165\u529b\uff09",
                                        "description": "\u7279\u5b9a\u5546\u53d6\u5f15\u6cd5\u30da\u30fc\u30b8\u672c\u6587\u306e\u5358\u4e00\u30d6\u30ed\u30d6\u6295\u5f71\u3002\u9805\u76ee\u5225\u884c\u3067\u306f\u306a\u304f\u3001\u30da\u30fc\u30b8\u5168\u4f53\u30921\u672c\u306e\u672c\u6587\u3068\u3057\u3066\u6271\u3046\u3002",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "mode": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "enum": [
                                            "trade_law_form",
                                            null
                                        ],
                                        "description": "HTML\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u6642\u306ePRG mode\u3002"
                                    },
                                    "trade_law_1_name": {
                                        "type": "string"
                                    },
                                    "trade_law_1_description": {
                                        "type": "string"
                                    },
                                    "trade_law_1_displayOrderScreen": {
                                        "type": "string"
                                    },
                                    "trade_law_2_name": {
                                        "type": "string"
                                    },
                                    "trade_law_2_description": {
                                        "type": "string"
                                    },
                                    "trade_law_2_displayOrderScreen": {
                                        "type": "string"
                                    },
                                    "trade_law_3_name": {
                                        "type": "string"
                                    },
                                    "trade_law_3_description": {
                                        "type": "string"
                                    },
                                    "trade_law_3_displayOrderScreen": {
                                        "type": "string"
                                    },
                                    "trade_law_4_name": {
                                        "type": "string"
                                    },
                                    "trade_law_4_description": {
                                        "type": "string"
                                    },
                                    "trade_law_4_displayOrderScreen": {
                                        "type": "string"
                                    },
                                    "trade_law_5_name": {
                                        "type": "string"
                                    },
                                    "trade_law_5_description": {
                                        "type": "string"
                                    },
                                    "trade_law_5_displayOrderScreen": {
                                        "type": "string"
                                    },
                                    "trade_law_6_name": {
                                        "type": "string"
                                    },
                                    "trade_law_6_description": {
                                        "type": "string"
                                    },
                                    "trade_law_6_displayOrderScreen": {
                                        "type": "string"
                                    }
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/POST/admin/trade-lawResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/admin/two-factor-auth": {
            "get": {
                "operationId": "doVerifyTwoFactorAuth",
                "summary": "Renders the admin 2FA challenge form.",
                "description": "Anonymous-accessible (login-context): returns 200 regardless of\nsession state \u2014 the admin firewall guard is downstream of a\nsuccessful challenge.",
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/admin/two-factor-authResponse"
                                }
                            }
                        }
                    }
                }
            },
            "post": {
                "operationId": "doVerifyTwoFactorAuth",
                "summary": "Verifies the submitted TOTP code (doVerifyTwoFactorAuth).",
                "description": "Login-context: no admin-firewall guard. The trusted `loginId` is\nread from the password-verified session challenge and the admin\nsession is elevated only after the token succeeds. Legacy\nclient-supplied `loginId` is ignored.\n\nFailure mapping:\n  - Invalid CSRF                   \u2192 403 (interceptor)\n  - Missing pending challenge      \u2192 403\n  - SemanticVariableException      \u2192 400 (malformed code)\n  - TwoFactorAuthFailedException   \u2192 400 (code mismatch)\n  - LoginAttemptsExceededException \u2192 429 (too many codes burned;\n      the pending challenge is dropped here, so the admin has to\n      come back through the password stage \u2014 which is throttled on\n      the same counter, i.e. only after the window has passed)",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "deviceToken": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 128,
                                        "title": "\u4e8c\u8981\u7d20\u8a8d\u8a3c\u30c7\u30d0\u30a4\u30b9\u30c8\u30fc\u30af\u30f3\uff08\u5165\u529b\uff09",
                                        "description": "/admin/two-factor-auth \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u4e8c\u8981\u7d20\u8a8d\u8a3c\u30c7\u30d0\u30a4\u30b9\u30c8\u30fc\u30af\u30f3\u3002\u6570\u5024\u6f14\u7b97\u5bfe\u8c61\u3067\u306f\u306a\u304f\u3001\u7167\u5408\u30fbURL\u30fb\u914d\u9001\u8ffd\u8de1\u306a\u3069\u306b\u4f7f\u3046\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u8b58\u5225\u5b50\u3002",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "loginId": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "title": "\u30ed\u30b0\u30a4\u30f3ID\uff08\u5165\u529b\uff09",
                                        "description": "\u7ba1\u7406\u753b\u9762\u30ed\u30b0\u30a4\u30f3\u7528\u306eID\u3002\u4e00\u610f Fake\u89b3\u5bdf\u6587\u5b57\u9577 6\u301c13; \u89b3\u5bdf\u5024 'test-admin', 'shop-owner', 'deputy', 'deleted-admin', 'unknown-user'\u3002 \u3053\u306e\u5024\u306f2FA\u30ed\u30b0\u30a4\u30f3\u30c1\u30e3\u30ec\u30f3\u30b8\u3067\u306f\u4e92\u63db\u5165\u529b\u3068\u3057\u3066\u306e\u307f\u53d7\u3051\u53d6\u308a\u3001\u4fe1\u983c\u3057\u306a\u3044\u3002",
                                        "example": "test-admin",
                                        "minLength": 0,
                                        "maxLength": 128,
                                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002 Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "mode": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 32,
                                        "title": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u30e2\u30fc\u30c9",
                                        "description": "HTML\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u3092Resource/JSON\u5883\u754c\u3068\u533a\u5225\u3059\u308b\u305f\u3081\u306e\u4efb\u610f\u30d1\u30e9\u30e1\u30fc\u30bf\u30022FA\u30c1\u30e3\u30ec\u30f3\u30b8\u753b\u9762\u3067\u306f browser \u306e 303 \u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u5224\u5b9a\u306b\u3060\u3051\u4f7f\u3046\u3002",
                                        "example": "verify"
                                    }
                                },
                                "required": [
                                    "deviceToken"
                                ]
                            }
                        }
                    },
                    "required": true
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/POST/admin/two-factor-authResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/admin/two-factor-auth-edit": {
            "get": {
                "operationId": "goAdminTwoFactorAuthEdit",
                "summary": "ALPS `goAdminTwoFactorAuthEdit` \u306b\u5bfe\u5fdc\u3059\u308b GET \u64cd\u4f5c\u3002",
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/admin/two-factor-auth-editResponse"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/admin/two-factor-auth-set": {
            "get": {
                "operationId": "doSetTwoFactorAuth",
                "summary": "Renders the admin 2FA device-setup form.",
                "description": "Anonymous-accessible (login-context): returns 200 regardless of\nsession state.",
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/admin/two-factor-auth-setResponse"
                                }
                            }
                        }
                    }
                }
            },
            "put": {
                "operationId": "doSetTwoFactorAuth",
                "summary": "Registers the TOTP device after confirming the first code\n(doSetTwoFactorAuth). ALPS marks this `idempotent` \u2192 PUT.",
                "description": "The pending login identity and server-generated candidate secret are\nread from {@see \\HtmlAdminLoginChallengeAdapter}. Legacy client fields\n(`loginId`, `authKey`) may still arrive from old forms/tests, but are\ndeliberately ignored and never forwarded to the Be transition.\n\nFailure mapping:\n  - Invalid CSRF                  \u2192 403 (interceptor)\n  - Missing pending setup         \u2192 403\n  - SemanticVariableException     \u2192 400 (malformed code)\n  - TwoFactorAuthFailedException  \u2192 400 (first code mismatch)",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "deviceToken": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 128,
                                        "title": "\u4e8c\u8981\u7d20\u8a8d\u8a3c\u30c7\u30d0\u30a4\u30b9\u30c8\u30fc\u30af\u30f3\uff08\u5165\u529b\uff09",
                                        "description": "/admin/two-factor-auth-set \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u4e8c\u8981\u7d20\u8a8d\u8a3c\u30c7\u30d0\u30a4\u30b9\u30c8\u30fc\u30af\u30f3\u3002\u6570\u5024\u6f14\u7b97\u5bfe\u8c61\u3067\u306f\u306a\u304f\u3001\u7167\u5408\u30fbURL\u30fb\u914d\u9001\u8ffd\u8de1\u306a\u3069\u306b\u4f7f\u3046\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u8b58\u5225\u5b50\u3002",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "loginId": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "title": "\u30ed\u30b0\u30a4\u30f3ID\uff08\u5165\u529b\uff09",
                                        "description": "\u7ba1\u7406\u753b\u9762\u30ed\u30b0\u30a4\u30f3\u7528\u306eID\u3002\u4e00\u610f Fake\u89b3\u5bdf\u6587\u5b57\u9577 6\u301c13; \u89b3\u5bdf\u5024 'test-admin', 'shop-owner', 'deputy', 'deleted-admin', 'unknown-user'\u3002 \u3053\u306e\u5024\u306f2FA\u30ed\u30b0\u30a4\u30f3\u30c1\u30e3\u30ec\u30f3\u30b8\u3067\u306f\u4e92\u63db\u5165\u529b\u3068\u3057\u3066\u306e\u307f\u53d7\u3051\u53d6\u308a\u3001\u4fe1\u983c\u3057\u306a\u3044\u3002",
                                        "example": "test-admin",
                                        "minLength": 0,
                                        "maxLength": 128,
                                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002 Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "authKey": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 128,
                                        "title": "\u4e8c\u8981\u7d20\u8a8d\u8a3c\u30ad\u30fc\uff08\u5165\u529b\uff09",
                                        "description": "/admin/two-factor-auth-set \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u4e8c\u8981\u7d20\u8a8d\u8a3c\u30ad\u30fc\u3002\u6570\u5024\u6f14\u7b97\u5bfe\u8c61\u3067\u306f\u306a\u304f\u3001\u7167\u5408\u30fbURL\u30fb\u914d\u9001\u8ffd\u8de1\u306a\u3069\u306b\u4f7f\u3046\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u8b58\u5225\u5b50\u3002 \u3053\u306e\u5024\u306f2FA\u8a2d\u5b9a\u3067\u306f\u4e92\u63db\u5165\u529b\u3068\u3057\u3066\u306e\u307f\u53d7\u3051\u53d6\u308a\u3001\u4fe1\u983c\u3057\u306a\u3044\u3002",
                                        "$comment": "\u30ad\u30fc/\u8ffd\u8de1\u756a\u53f7\u306f\u7167\u5408\u7528\u306e\u4e0d\u900f\u660e\u6587\u5b57\u5217\u3067\u3001\u6570\u5024\u6f14\u7b97\u5bfe\u8c61\u3067\u306f\u306a\u3044\u3002 Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "mode": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 32,
                                        "title": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u30e2\u30fc\u30c9",
                                        "description": "HTML\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u3092Resource/JSON\u5883\u754c\u3068\u533a\u5225\u3059\u308b\u305f\u3081\u306e\u4efb\u610f\u30d1\u30e9\u30e1\u30fc\u30bf\u30022FA\u30c7\u30d0\u30a4\u30b9\u767b\u9332\u753b\u9762\u3067\u306f browser \u306e 303 \u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u5224\u5b9a\u306b\u3060\u3051\u4f7f\u3046\u3002",
                                        "example": "set"
                                    }
                                },
                                "required": [
                                    "deviceToken"
                                ]
                            }
                        }
                    },
                    "required": true
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/PUT/admin/two-factor-auth-setResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/admin/unsupported-route": {
            "get": {
                "summary": "Safe placeholder for EC-CUBE admin routes that are referenced by ported\ntemplates but not yet backed by a dedicated Be transition.",
                "parameters": [
                    {
                        "name": "routeName",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string"
                        },
                        "description": "\u30da\u30fc\u30b8URL\uff08\u5165\u529b\uff09 - \u30da\u30fc\u30b8\u306eURL\u30d1\u30b9\uff08Symfony\u30eb\u30fc\u30c8\u540d\u3002\u4f8b: homepage, product_list\uff09"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/admin/unsupported-routeResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            },
            "post": {
                "summary": "Safe placeholder for EC-CUBE admin routes that are referenced by ported\ntemplates but not yet backed by a dedicated Be transition.",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "routeName": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 255,
                                        "title": "\u30da\u30fc\u30b8URL\uff08\u5165\u529b\uff09",
                                        "description": "\u30da\u30fc\u30b8\u306eURL\u30d1\u30b9\uff08Symfony\u30eb\u30fc\u30c8\u540d\u3002\u4f8b: homepage, product_list\uff09",
                                        "default": "",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "returnTo": {
                                        "title": "\u30da\u30fc\u30b8URL\uff08\u5165\u529b\uff09",
                                        "description": "\u30da\u30fc\u30b8\u306eURL\u30d1\u30b9\uff08Symfony\u30eb\u30fc\u30c8\u540d\u3002\u4f8b: homepage, product_list\uff09",
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 2048,
                                        "example": "/products",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    }
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/POST/admin/unsupported-routeResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/cart/item": {
            "post": {
                "operationId": "doAddCartItem",
                "summary": "Phase B Slice 9: all three params arrive from the HTTP request body\nand are user-controlled. Declared as taint sources so Psalm can\ntrace them through Becoming into any downstream sink (Phase 2 will\nsurface real flows once Fake Reasons are swapped for DB-backed\nimplementations).",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "productCode": {
                                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9\uff08\u5165\u529b\uff09",
                                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 \u5546\u54c1\u3092\u8b58\u5225\u3059\u308bSKU\u3002Fake corpus\u3067\u306fASCII\u82f1\u6570\u30fb\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3067\u3001\u53d7\u6ce8\u660e\u7d30/\u30ab\u30fc\u30c8\u660e\u7d30\u306e\u7d50\u5408\u30ad\u30fc\u306b\u306a\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c26\u3002",
                                        "type": "string",
                                        "minLength": 0,
                                        "maxLength": 64,
                                        "example": "sample-001",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "quantity": {
                                        "title": "\u6570\u91cf\uff08\u5165\u529b\uff09",
                                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 Fake\u89b3\u5bdf\u6570\u5024 1\u301c3; \u89b3\u5bdf\u5024 '1', '2', '3'\u3002",
                                        "type": [
                                            "integer",
                                            "string",
                                            "null"
                                        ],
                                        "example": "1",
                                        "$comment": "\u6570\u91cf\uff08\u5165\u529b\uff09\u306f\u672c\u6765\u6570\u5024/\u5217\u6319\u306e\u696d\u52d9\u5024\u3060\u304c\u3001HTTP\u30d5\u30a9\u30fc\u30e0\u3067\u306f\u6587\u5b57\u5217\u3068\u3057\u3066\u5c4a\u304f\u3002Resource/Semantic\u5c64\u306e400\u5fdc\u7b54\u3092\u596a\u308f\u306a\u3044\u305f\u3081transport schema\u3067\u306f\u6587\u5b57\u5217\u5165\u529b\u3092\u8a31\u5bb9\u3059\u308b\u3002 Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "sessionPrefix": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 128,
                                        "title": "\u30bb\u30c3\u30b7\u30e7\u30f3\u63a5\u982d\u8f9e\uff08\u5165\u529b\uff09",
                                        "description": "\u8cfc\u5165\u30d5\u30ed\u30fc\u306e\u30ab\u30fc\u30c8\u30ad\u30fc\u3092\u69cb\u6210\u3059\u308b\u30bb\u30c3\u30b7\u30e7\u30f3\u30b9\u30b3\u30fc\u30d7\u306e\u63a5\u982d\u8f9e\u3002saleTypeId \u3068\u7d44\u307f\u5408\u308f\u305b\u3066\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306e\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 16\u301c23; \u89b3\u5bdf\u5024 'session-prefix-1', 'session-checkout-pilot5'\u3002",
                                        "default": "session-prefix-1",
                                        "example": "session-prefix-1",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "operation": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 64,
                                        "examples": [
                                            "add",
                                            "update",
                                            "delete"
                                        ],
                                        "title": "\u64cd\u4f5c\u7a2e\u5225\uff08\u5165\u529b\uff09",
                                        "description": "/cart/item \u306eunsafe\u64cd\u4f5c\u7d50\u679c\u3092\u8868\u3059\u64cd\u4f5c\u7a2e\u5225\u3002\u6210\u529f\u6642\u306e\u5dee\u5206\u3001\u51e6\u7406\u4ef6\u6570\u3001\u51aa\u7b49\u72b6\u614b\u3092\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u306b\u8fd4\u3059\u3002",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    }
                                },
                                "required": [
                                    "productCode"
                                ]
                            }
                        }
                    },
                    "required": true
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/POST/cart/itemResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            },
            "put": {
                "operationId": "doUpdateCartItemQuantity",
                "summary": "EC-CUBE doUpdateCartItemQuantity \u2014 replace an item's quantity\n(Pilot 10). Idempotent (PUT semantics), CSRF-guarded.",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "productCode": {
                                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9\uff08\u5165\u529b\uff09",
                                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 \u5546\u54c1\u3092\u8b58\u5225\u3059\u308bSKU\u3002Fake corpus\u3067\u306fASCII\u82f1\u6570\u30fb\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3067\u3001\u53d7\u6ce8\u660e\u7d30/\u30ab\u30fc\u30c8\u660e\u7d30\u306e\u7d50\u5408\u30ad\u30fc\u306b\u306a\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c26\u3002",
                                        "type": "string",
                                        "minLength": 0,
                                        "maxLength": 64,
                                        "example": "sample-001",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "quantity": {
                                        "title": "\u6570\u91cf\uff08\u5165\u529b\uff09",
                                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 Fake\u89b3\u5bdf\u6570\u5024 1\u301c3; \u89b3\u5bdf\u5024 '1', '2', '3'\u3002",
                                        "type": [
                                            "integer",
                                            "string",
                                            "null"
                                        ],
                                        "example": "1",
                                        "$comment": "\u6570\u91cf\uff08\u5165\u529b\uff09\u306f\u672c\u6765\u6570\u5024/\u5217\u6319\u306e\u696d\u52d9\u5024\u3060\u304c\u3001HTTP\u30d5\u30a9\u30fc\u30e0\u3067\u306f\u6587\u5b57\u5217\u3068\u3057\u3066\u5c4a\u304f\u3002Resource/Semantic\u5c64\u306e400\u5fdc\u7b54\u3092\u596a\u308f\u306a\u3044\u305f\u3081transport schema\u3067\u306f\u6587\u5b57\u5217\u5165\u529b\u3092\u8a31\u5bb9\u3059\u308b\u3002 Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "sessionPrefix": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 128,
                                        "title": "\u30bb\u30c3\u30b7\u30e7\u30f3\u63a5\u982d\u8f9e\uff08\u5165\u529b\uff09",
                                        "description": "\u8cfc\u5165\u30d5\u30ed\u30fc\u306e\u30ab\u30fc\u30c8\u30ad\u30fc\u3092\u69cb\u6210\u3059\u308b\u30bb\u30c3\u30b7\u30e7\u30f3\u30b9\u30b3\u30fc\u30d7\u306e\u63a5\u982d\u8f9e\u3002saleTypeId \u3068\u7d44\u307f\u5408\u308f\u305b\u3066\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306e\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 16\u301c23; \u89b3\u5bdf\u5024 'session-prefix-1', 'session-checkout-pilot5'\u3002",
                                        "default": "session-prefix-1",
                                        "example": "session-prefix-1",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    }
                                },
                                "required": [
                                    "productCode",
                                    "quantity"
                                ]
                            }
                        }
                    },
                    "required": true
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/PUT/cart/itemResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            },
            "delete": {
                "operationId": "doRemoveCartItem",
                "summary": "EC-CUBE doRemoveCartItem \u2014 remove an item from the cart (Pilot 11).",
                "description": "Idempotent (DELETE), CSRF-guarded.",
                "parameters": [
                    {
                        "name": "productCode",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "\u5546\u54c1\u30b3\u30fc\u30c9\uff08\u5165\u529b\uff09 - SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 \u5546\u54c1\u3092\u8b58\u5225\u3059\u308bSKU\u3002Fake corpus\u3067\u306fASCII\u82f1\u6570\u30fb\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3067\u3001\u53d7\u6ce8\u660e\u7d30/\u30ab\u30fc\u30c8\u660e\u7d30\u306e\u7d50\u5408\u30ad\u30fc\u306b\u306a\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c26\u3002",
                        "example": "sample-001"
                    },
                    {
                        "name": "sessionPrefix",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string"
                        },
                        "description": "\u30bb\u30c3\u30b7\u30e7\u30f3\u63a5\u982d\u8f9e\uff08\u5165\u529b\uff09 - \u8cfc\u5165\u30d5\u30ed\u30fc\u306e\u30ab\u30fc\u30c8\u30ad\u30fc\u3092\u69cb\u6210\u3059\u308b\u30bb\u30c3\u30b7\u30e7\u30f3\u30b9\u30b3\u30fc\u30d7\u306e\u63a5\u982d\u8f9e\u3002saleTypeId \u3068\u7d44\u307f\u5408\u308f\u305b\u3066\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306e\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 16\u301c23; \u89b3\u5bdf\u5024 'session-prefix-1', 'session-checkout-pilot5'\u3002",
                        "example": "session-prefix-1"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/DELETE/cart/itemResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/contact/complete": {
            "get": {
                "operationId": "goContactComplete",
                "summary": "ALPS `goContactComplete` \u306b\u5bfe\u5fdc\u3059\u308b GET \u64cd\u4f5c\u3002",
                "parameters": [
                    {
                        "name": "ticketId",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string"
                        },
                        "description": "\u53d7\u4ed8\u756a\u53f7\uff08\u5165\u529b\uff09 - \u554f\u3044\u5408\u308f\u305b\u9001\u4fe1\u5f8c\u306b\u767a\u884c\u3055\u308c\u308b\u516c\u958b\u53d7\u4ed8\u756a\u53f7\u3002\u554f\u3044\u5408\u308f\u305b\u672c\u6587\u306e readback resource \u3067\u306f\u306a\u304f\u3001\u5b8c\u4e86\u72b6\u614b\u306e\u6210\u7acb\u8a3c\u62e0\u3068\u3057\u3066\u4f7f\u3046\u3002"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/contact/completeResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/contact/confirm": {
            "get": {
                "operationId": "goContactForm",
                "summary": "ALPS `goContactForm` \u306b\u5bfe\u5fdc\u3059\u308b GET \u64cd\u4f5c\u3002",
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/contact/confirmResponse"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/entry/activate": {
            "get": {
                "operationId": "goTop",
                "summary": "EC-CUBE doActivateCustomer landing \u2014 the email-verification-complete\nscreen. Pure renderer: the body surfaces only the screen shape + the\noutbound `goTop` transition (ALPS `#CustomerActivationComplete`).",
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/entry/activateResponse"
                                }
                            }
                        }
                    }
                }
            },
            "post": {
                "operationId": "doActivateCustomer",
                "summary": "ALPS `doActivateCustomer` \u306b\u5bfe\u5fdc\u3059\u308b POST \u64cd\u4f5c\u3002",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "secretKey": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 128,
                                        "title": "\u30e1\u30fc\u30eb\u8a8d\u8a3c\u30ad\u30fc\uff08\u5165\u529b\uff09",
                                        "description": "\u4f1a\u54e1\u30a2\u30ab\u30a6\u30f3\u30c8\u306e\u30e1\u30fc\u30eb\u8a8d\u8a3c\u30c8\u30fc\u30af\u30f3\u3002/entry/activate/{secret_key}\u5f62\u5f0f\u306eURL\u306b\u4f7f\u7528\u3002\u6697\u53f7\u9375\u3084API\u30b7\u30fc\u30af\u30ec\u30c3\u30c8\u3067\u306f\u306a\u3044\u3002\u4f1a\u54e1\u767b\u9332\u6642\u306b\u30e9\u30f3\u30c0\u30e0\u751f\u6210 Fake\u89b3\u5bdf\u6587\u5b57\u9577 34\u301c34; \u89b3\u5bdf\u5024 'pending-secret-key-pilot7-2026abcd'; null 19/25\u3002",
                                        "example": "pending-secret-key-pilot7-2026abcd",
                                        "$comment": "\u30ad\u30fc/\u8ffd\u8de1\u756a\u53f7\u306f\u7167\u5408\u7528\u306e\u4e0d\u900f\u660e\u6587\u5b57\u5217\u3067\u3001\u6570\u5024\u6f14\u7b97\u5bfe\u8c61\u3067\u306f\u306a\u3044\u3002 Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    }
                                },
                                "required": [
                                    "secretKey"
                                ]
                            }
                        }
                    },
                    "required": true
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/POST/entry/activateResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/entry/complete": {
            "get": {
                "operationId": "goCustomerRegistrationComplete",
                "summary": "ALPS `goCustomerRegistrationComplete` \u306b\u5bfe\u5fdc\u3059\u308b GET \u64cd\u4f5c\u3002",
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/entry/completeResponse"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/entry/confirm": {
            "get": {
                "operationId": "goCustomerRegistrationConfirm",
                "summary": "ALPS `goCustomerRegistrationConfirm` \u306b\u5bfe\u5fdc\u3059\u308b GET \u64cd\u4f5c\u3002",
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/entry/confirmResponse"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/help/about": {
            "get": {
                "operationId": "goodTraded",
                "summary": "ALPS `goodTraded` \u306b\u5bfe\u5fdc\u3059\u308b GET \u64cd\u4f5c\u3002",
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/help/aboutResponse"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/help/agreement": {
            "get": {
                "operationId": "goHelpAgreement",
                "summary": "ALPS `goHelpAgreement` \u306b\u5bfe\u5fdc\u3059\u308b GET \u64cd\u4f5c\u3002",
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/help/agreementResponse"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/help/guide": {
            "get": {
                "operationId": "goHelpGuide",
                "summary": "ALPS `goHelpGuide` \u306b\u5bfe\u5fdc\u3059\u308b GET \u64cd\u4f5c\u3002",
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/help/guideResponse"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/help/privacy": {
            "get": {
                "operationId": "goHelpPrivacy",
                "summary": "ALPS `goHelpPrivacy` \u306b\u5bfe\u5fdc\u3059\u308b GET \u64cd\u4f5c\u3002",
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/help/privacyResponse"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/help/trade-law": {
            "get": {
                "operationId": "goHelpTradeLaw",
                "summary": "ALPS `goHelpTradeLaw` \u306b\u5bfe\u5fdc\u3059\u308b GET \u64cd\u4f5c\u3002",
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/help/trade-lawResponse"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/mypage/address": {
            "get": {
                "operationId": "doUpdateCustomerAddress",
                "summary": "EC-CUBE \u304a\u5c4a\u3051\u5148\u60c5\u5831\u7de8\u96c6 \u2014 show the address add/edit form.",
                "description": "Pure form-info endpoint: no Be Framework, no domain logic. Maps\nEC-CUBE's `mypage_delivery_new` (no `addressId`) and\n`mypage_delivery_edit` (`addressId` given) screens. AUTHN +\nownership AUTHZ are enforced here directly (mirrors Withdraw::onGet\n\u2014 a Resource-level guard on a no-domain form page):\n\n  - no session                    \u2192 401\n  - addressId of an unknown row    \u2192 404\n  - addressId owned by another     \u2192 403\n\nPhase 3 \u2014 HTML FORM page. The resource builds an {@see \\AddressForm}\n(Ray.WebFormModule AbstractForm) and exposes it as `body['form']`.\nFor the edit screen the form is pre-populated from the stored\naddress; for the new screen it is empty. VALIDATION AUTHORITY\nSTAYS WITH the Be Framework Becoming chain (onPost). The JSON\ncontexts ignore `body['form']`.",
                "parameters": [
                    {
                        "name": "addressId",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string"
                        },
                        "description": "\u914d\u9001\u5148\u4f4f\u6240ID\uff08\u5165\u529b\uff09 - dtb_customer_address.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e AddressEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f 32\u6841hex \u3092\u751f\u6210\u3057\u3001SQL \u5b9f\u88c5\u306f dtb_customer_address.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u6240\u6709\u8005\u306f customerId\u3001AUTHZ \u691c\u67fb\u306f CustomerAddressUpdated / CustomerAddressDeleted \u3067 getById \u2192 customerId \u4e00\u81f4\u78ba\u8a8d\u306e\u9806\u3067\u5b9f\u65bd Fake\u89b3\u5bdf\u6587\u5b57\u9577 32\u301c32; \u89b3\u5bdf\u5024 'addr00000000000000000000000000a1'\u3002",
                        "example": "addr00000000000000000000000000a1"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/mypage/addressResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            },
            "put": {
                "operationId": "doUpdateCustomerAddress",
                "summary": "ALPS `doUpdateCustomerAddress` \u306b\u5bfe\u5fdc\u3059\u308b PUT \u64cd\u4f5c\u3002",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "addressId": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "title": "\u914d\u9001\u5148\u4f4f\u6240ID\uff08\u5165\u529b\uff09",
                                        "description": "dtb_customer_address.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e AddressEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f 32\u6841hex \u3092\u751f\u6210\u3057\u3001SQL \u5b9f\u88c5\u306f dtb_customer_address.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u6240\u6709\u8005\u306f customerId\u3001AUTHZ \u691c\u67fb\u306f CustomerAddressUpdated / CustomerAddressDeleted \u3067 getById \u2192 customerId \u4e00\u81f4\u78ba\u8a8d\u306e\u9806\u3067\u5b9f\u65bd Fake\u89b3\u5bdf\u6587\u5b57\u9577 32\u301c32; \u89b3\u5bdf\u5024 'addr00000000000000000000000000a1'\u3002",
                                        "example": "addr00000000000000000000000000a1",
                                        "minLength": 0,
                                        "maxLength": 128,
                                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002 Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "name01": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 80,
                                        "title": "\u59d3\uff08\u5165\u529b\uff09",
                                        "description": "\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u30fb\u304a\u554f\u3044\u5408\u308f\u305b\u3067\u5171\u901a\u4f7f\u7528\u3055\u308c\u308b\u59d3 Fake\u89b3\u5bdf\u6587\u5b57\u9577 2\u301c2; \u89b3\u5bdf\u5024 '\u9234\u6728', '\u5c71\u7530', '\u4f50\u85e4', '\u9ad8\u6a4b', '\u9000\u4f1a'\u3002",
                                        "example": "\u9234\u6728",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "name02": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 80,
                                        "title": "\u540d\uff08\u5165\u529b\uff09",
                                        "description": "\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u30fb\u304a\u554f\u3044\u5408\u308f\u305b\u3067\u5171\u901a\u4f7f\u7528\u3055\u308c\u308b\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 1\u301c3; \u89b3\u5bdf\u5024 '\u30a2\u30ea\u30b9', '\u592a\u90ce', '\u6b21\u90ce', '\u82b1\u5b50', '\u4e09\u90ce', '\u6e08'\u3002",
                                        "example": "\u30a2\u30ea\u30b9",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "kana01": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 32,
                                        "title": "\u30bb\u30a4\uff08\u5165\u529b\uff09",
                                        "description": "\u59d3\u306e\u30ab\u30bf\u30ab\u30ca\u8aad\u307f\u3002\u5168\u89d2\u30ab\u30bf\u30ab\u30ca\u306e\u307f\u8a31\u53ef\uff08\u3072\u3089\u304c\u306a\u5165\u529b\u6642\u306f\u81ea\u52d5\u5909\u63db\uff09\u3002\u65e5\u672c\u306e\u6c0f\u540d\u5165\u529b\u306b\u7279\u6709\u306e\u8aad\u307f\u4eee\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 3\u301c3; \u89b3\u5bdf\u5024 '\u30e4\u30de\u30c0', '\u30b5\u30c8\u30a6'; null 18/31\u3002",
                                        "example": "\u30e4\u30de\u30c0",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "kana02": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 32,
                                        "title": "\u30e1\u30a4\uff08\u5165\u529b\uff09",
                                        "description": "\u540d\u306e\u30ab\u30bf\u30ab\u30ca\u8aad\u307f\u3002\u5168\u89d2\u30ab\u30bf\u30ab\u30ca\u306e\u307f\u8a31\u53ef\uff08\u3072\u3089\u304c\u306a\u5165\u529b\u6642\u306f\u81ea\u52d5\u5909\u63db\uff09\u3002\u65e5\u672c\u306e\u6c0f\u540d\u5165\u529b\u306b\u7279\u6709\u306e\u8aad\u307f\u4eee\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 3\u301c3; \u89b3\u5bdf\u5024 '\u30a2\u30ea\u30b9', '\u30cf\u30ca\u30b3', '\u30bf\u30ed\u30a6'; null 18/31\u3002",
                                        "example": "\u30a2\u30ea\u30b9",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "companyName": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 32,
                                        "title": "\u4f1a\u793e\u540d\uff08\u5165\u529b\uff09",
                                        "description": "\u6cd5\u4eba\u9867\u5ba2\u306e\u793e\u540d\u3002B2B\u53d6\u5f15\u3084\u30a4\u30f3\u30dc\u30a4\u30b9\u3067\u4f7f\u7528 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c11; \u89b3\u5bdf\u5024 'Acme Corp.', '\u682a\u5f0f\u4f1a\u793eEC-CUBE'; null 24/32\u3002",
                                        "example": "Acme Corp.",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "postalCode": {
                                        "title": "\u90f5\u4fbf\u756a\u53f7\uff08\u5165\u529b\uff09",
                                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u6709\u7121\u3092\u3069\u3061\u3089\u3082\u53d7\u3051\u5165\u308c\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 7\u301c8; \u89b3\u5bdf\u5024 '1500001', '1000005', '5300001', '530-0001'; null 18/33\u3002",
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "example": "1500001",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "pref": {
                                        "title": "\u90fd\u9053\u5e9c\u770c\uff08\u5165\u529b\uff09",
                                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u90fd\u9053\u5e9c\u770cID\u3002\u4f4f\u6240\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u72b6\u614b\u3067\u306f0\u3001\u78ba\u5b9a\u4f4f\u6240\u3067\u306f1\u301c47\u3092\u4f7f\u3046\u3002 Fake\u89b3\u5bdf\u6570\u5024 13\u301c27; \u89b3\u5bdf\u5024 '13', '27'; null 3/9\u3002",
                                        "type": [
                                            "integer",
                                            "null"
                                        ],
                                        "example": 13,
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "addr01": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 32,
                                        "title": "\u5e02\u533a\u753a\u6751\uff08\u5165\u529b\uff09",
                                        "description": "\u90fd\u9053\u5e9c\u770c\u3088\u308a\u4e0b\u4f4d\u306e\u5e02\u533a\u753a\u6751\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 3\u301c7; \u89b3\u5bdf\u5024 '\u6e0b\u8c37\u533a', '\u5343\u4ee3\u7530\u533a', '\u5927\u962a\u5e02\u5317\u533a', '\u5927\u962a\u5e02\u5317\u533a\u6885\u7530'; null 18/33\u3002",
                                        "example": "\u6e0b\u8c37\u533a",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "addr02": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 32,
                                        "title": "\u756a\u5730\u30fb\u5efa\u7269\u540d\uff08\u5165\u529b\uff09",
                                        "description": "\u756a\u5730\u30fb\u30d3\u30eb\u540d\u30fb\u90e8\u5c4b\u756a\u53f7\u7b49\u306e\u8a73\u7d30\u4f4f\u6240 Fake\u89b3\u5bdf\u6587\u5b57\u9577 5\u301c8; \u89b3\u5bdf\u5024 '\u795e\u5bae\u524d1-1-1', '\u4e38\u306e\u51852-2-2', '\u6885\u75301-1-1', '1-2-3'; null 18/33\u3002",
                                        "example": "\u795e\u5bae\u524d1-1-1",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "phoneNumber": {
                                        "title": "\u96fb\u8a71\u756a\u53f7\uff08\u5165\u529b\uff09",
                                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u3002Fake corpus\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3060\u304c\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3059\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c10; \u89b3\u5bdf\u5024 '0312345678', '0901234567', '0612345678'; null 18/33\u3002",
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 13,
                                        "example": "0312345678",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    }
                                },
                                "required": [
                                    "addressId"
                                ]
                            }
                        }
                    },
                    "required": true
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/PUT/mypage/addressResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            },
            "delete": {
                "operationId": "doUpdateCustomerAddress",
                "summary": "ALPS `doUpdateCustomerAddress` \u306b\u5bfe\u5fdc\u3059\u308b DELETE \u64cd\u4f5c\u3002",
                "parameters": [
                    {
                        "name": "addressId",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "\u914d\u9001\u5148\u4f4f\u6240ID\uff08\u5165\u529b\uff09 - dtb_customer_address.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e AddressEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f 32\u6841hex \u3092\u751f\u6210\u3057\u3001SQL \u5b9f\u88c5\u306f dtb_customer_address.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u6240\u6709\u8005\u306f customerId\u3001AUTHZ \u691c\u67fb\u306f CustomerAddressUpdated / CustomerAddressDeleted \u3067 getById \u2192 customerId \u4e00\u81f4\u78ba\u8a8d\u306e\u9806\u3067\u5b9f\u65bd Fake\u89b3\u5bdf\u6587\u5b57\u9577 32\u301c32; \u89b3\u5bdf\u5024 'addr00000000000000000000000000a1'\u3002",
                        "example": "addr00000000000000000000000000a1"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/DELETE/mypage/addressResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/mypage/address-list": {
            "get": {
                "operationId": "goCustomerAddressList",
                "summary": "ALPS `goCustomerAddressList` \u306b\u5bfe\u5fdc\u3059\u308b GET \u64cd\u4f5c\u3002",
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/mypage/address-listResponse"
                                }
                            }
                        }
                    }
                }
            },
            "post": {
                "operationId": "doCreateCustomerAddress",
                "summary": "ALPS `doCreateCustomerAddress` \u306b\u5bfe\u5fdc\u3059\u308b POST \u64cd\u4f5c\u3002",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "name01": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 80,
                                        "title": "\u59d3\uff08\u5165\u529b\uff09",
                                        "description": "\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u30fb\u304a\u554f\u3044\u5408\u308f\u305b\u3067\u5171\u901a\u4f7f\u7528\u3055\u308c\u308b\u59d3 Fake\u89b3\u5bdf\u6587\u5b57\u9577 2\u301c2; \u89b3\u5bdf\u5024 '\u9234\u6728', '\u5c71\u7530', '\u4f50\u85e4', '\u9ad8\u6a4b', '\u9000\u4f1a'\u3002",
                                        "example": "\u9234\u6728",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "name02": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 80,
                                        "title": "\u540d\uff08\u5165\u529b\uff09",
                                        "description": "\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u30fb\u304a\u554f\u3044\u5408\u308f\u305b\u3067\u5171\u901a\u4f7f\u7528\u3055\u308c\u308b\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 1\u301c3; \u89b3\u5bdf\u5024 '\u30a2\u30ea\u30b9', '\u592a\u90ce', '\u6b21\u90ce', '\u82b1\u5b50', '\u4e09\u90ce', '\u6e08'\u3002",
                                        "example": "\u30a2\u30ea\u30b9",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "postalCode": {
                                        "title": "\u90f5\u4fbf\u756a\u53f7\uff08\u5165\u529b\uff09",
                                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u6709\u7121\u3092\u3069\u3061\u3089\u3082\u53d7\u3051\u5165\u308c\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 7\u301c8; \u89b3\u5bdf\u5024 '1500001', '1000005', '5300001', '530-0001'; null 18/33\u3002",
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "example": "1500001",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "pref": {
                                        "title": "\u90fd\u9053\u5e9c\u770c\uff08\u5165\u529b\uff09",
                                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u90fd\u9053\u5e9c\u770cID\u3002\u4f4f\u6240\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u72b6\u614b\u3067\u306f0\u3001\u78ba\u5b9a\u4f4f\u6240\u3067\u306f1\u301c47\u3092\u4f7f\u3046\u3002 Fake\u89b3\u5bdf\u6570\u5024 13\u301c27; \u89b3\u5bdf\u5024 '13', '27'; null 3/9\u3002",
                                        "type": [
                                            "integer",
                                            "null"
                                        ],
                                        "example": 13,
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "addr01": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 32,
                                        "title": "\u5e02\u533a\u753a\u6751\uff08\u5165\u529b\uff09",
                                        "description": "\u90fd\u9053\u5e9c\u770c\u3088\u308a\u4e0b\u4f4d\u306e\u5e02\u533a\u753a\u6751\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 3\u301c7; \u89b3\u5bdf\u5024 '\u6e0b\u8c37\u533a', '\u5343\u4ee3\u7530\u533a', '\u5927\u962a\u5e02\u5317\u533a', '\u5927\u962a\u5e02\u5317\u533a\u6885\u7530'; null 18/33\u3002",
                                        "example": "\u6e0b\u8c37\u533a",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "addr02": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 32,
                                        "title": "\u756a\u5730\u30fb\u5efa\u7269\u540d\uff08\u5165\u529b\uff09",
                                        "description": "\u756a\u5730\u30fb\u30d3\u30eb\u540d\u30fb\u90e8\u5c4b\u756a\u53f7\u7b49\u306e\u8a73\u7d30\u4f4f\u6240 Fake\u89b3\u5bdf\u6587\u5b57\u9577 5\u301c8; \u89b3\u5bdf\u5024 '\u795e\u5bae\u524d1-1-1', '\u4e38\u306e\u51852-2-2', '\u6885\u75301-1-1', '1-2-3'; null 18/33\u3002",
                                        "example": "\u795e\u5bae\u524d1-1-1",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "phoneNumber": {
                                        "title": "\u96fb\u8a71\u756a\u53f7\uff08\u5165\u529b\uff09",
                                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u3002Fake corpus\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3060\u304c\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3059\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c10; \u89b3\u5bdf\u5024 '0312345678', '0901234567', '0612345678'; null 18/33\u3002",
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 13,
                                        "example": "0312345678",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "kana01": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 32,
                                        "title": "\u30bb\u30a4\uff08\u5165\u529b\uff09",
                                        "description": "\u59d3\u306e\u30ab\u30bf\u30ab\u30ca\u8aad\u307f\u3002\u5168\u89d2\u30ab\u30bf\u30ab\u30ca\u306e\u307f\u8a31\u53ef\uff08\u3072\u3089\u304c\u306a\u5165\u529b\u6642\u306f\u81ea\u52d5\u5909\u63db\uff09\u3002\u65e5\u672c\u306e\u6c0f\u540d\u5165\u529b\u306b\u7279\u6709\u306e\u8aad\u307f\u4eee\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 3\u301c3; \u89b3\u5bdf\u5024 '\u30e4\u30de\u30c0', '\u30b5\u30c8\u30a6'; null 18/31\u3002",
                                        "example": "\u30e4\u30de\u30c0",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "kana02": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 32,
                                        "title": "\u30e1\u30a4\uff08\u5165\u529b\uff09",
                                        "description": "\u540d\u306e\u30ab\u30bf\u30ab\u30ca\u8aad\u307f\u3002\u5168\u89d2\u30ab\u30bf\u30ab\u30ca\u306e\u307f\u8a31\u53ef\uff08\u3072\u3089\u304c\u306a\u5165\u529b\u6642\u306f\u81ea\u52d5\u5909\u63db\uff09\u3002\u65e5\u672c\u306e\u6c0f\u540d\u5165\u529b\u306b\u7279\u6709\u306e\u8aad\u307f\u4eee\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 3\u301c3; \u89b3\u5bdf\u5024 '\u30a2\u30ea\u30b9', '\u30cf\u30ca\u30b3', '\u30bf\u30ed\u30a6'; null 18/31\u3002",
                                        "example": "\u30a2\u30ea\u30b9",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "companyName": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 32,
                                        "title": "\u4f1a\u793e\u540d\uff08\u5165\u529b\uff09",
                                        "description": "\u6cd5\u4eba\u9867\u5ba2\u306e\u793e\u540d\u3002B2B\u53d6\u5f15\u3084\u30a4\u30f3\u30dc\u30a4\u30b9\u3067\u4f7f\u7528 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c11; \u89b3\u5bdf\u5024 'Acme Corp.', '\u682a\u5f0f\u4f1a\u793eEC-CUBE'; null 24/32\u3002",
                                        "example": "Acme Corp.",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    }
                                },
                                "required": [
                                    "name01",
                                    "name02",
                                    "postalCode",
                                    "pref",
                                    "addr01",
                                    "addr02",
                                    "phoneNumber"
                                ]
                            }
                        }
                    },
                    "required": true
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/POST/mypage/address-listResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/mypage/change": {
            "get": {
                "operationId": "goMypageChange",
                "summary": "goMypageChange \u2014 show the change-customer-info form pre-populated\nwith the logged-in customer's current values.",
                "description": "Safe read. No CSRF (read-only). AUTHN in the Be layer maps null\nsession \u2192 401.\n\nPhase 3 \u2014 HTML FORM page. The resource builds a {@see \\ChangeForm}\n(Ray.WebFormModule AbstractForm), pre-populates it with the\nfetched profile, and exposes it as `body['form']` so the HTML port\nrenders real `<input>`s via `{{ form.input(...) }}`. VALIDATION\nAUTHORITY STAYS WITH the Be Framework Becoming chain (onPost). The\nJSON contexts ignore `body['form']`; the flat profile keys stay on\n`body` for the JSON-context tests.",
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/mypage/changeResponse"
                                }
                            }
                        }
                    }
                }
            },
            "post": {
                "operationId": "doUpdateCustomer",
                "summary": "ALPS `doUpdateCustomer` \u306b\u5bfe\u5fdc\u3059\u308b POST \u64cd\u4f5c\u3002",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "email": {
                                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\uff08\u5165\u529b\uff09",
                                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u3002\u4f1a\u54e1\u767b\u9332\u30fb\u30ed\u30b0\u30a4\u30f3\u30fb\u901a\u77e5\u3067\u5171\u901a\u306b\u4f7f\u3046\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 15\u301c58; \u89b3\u5bdf\u5024 'bob@example.com', 'login-test@example.com', 'alice@example.com', 'carol@example.com', 'provisional@example.com', 'withdrawn-30000000aaaa3333bbbb4444cccc5555@example.invalid'\u3002",
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 254,
                                        "example": "alice@example.com",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "name01": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 80,
                                        "title": "\u59d3\uff08\u5165\u529b\uff09",
                                        "description": "\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u30fb\u304a\u554f\u3044\u5408\u308f\u305b\u3067\u5171\u901a\u4f7f\u7528\u3055\u308c\u308b\u59d3 Fake\u89b3\u5bdf\u6587\u5b57\u9577 2\u301c2; \u89b3\u5bdf\u5024 '\u9234\u6728', '\u5c71\u7530', '\u4f50\u85e4', '\u9ad8\u6a4b', '\u9000\u4f1a'\u3002",
                                        "example": "\u9234\u6728",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "name02": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 80,
                                        "title": "\u540d\uff08\u5165\u529b\uff09",
                                        "description": "\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u30fb\u304a\u554f\u3044\u5408\u308f\u305b\u3067\u5171\u901a\u4f7f\u7528\u3055\u308c\u308b\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 1\u301c3; \u89b3\u5bdf\u5024 '\u30a2\u30ea\u30b9', '\u592a\u90ce', '\u6b21\u90ce', '\u82b1\u5b50', '\u4e09\u90ce', '\u6e08'\u3002",
                                        "example": "\u30a2\u30ea\u30b9",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "kana01": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 32,
                                        "title": "\u30bb\u30a4\uff08\u5165\u529b\uff09",
                                        "description": "\u59d3\u306e\u30ab\u30bf\u30ab\u30ca\u8aad\u307f\u3002\u5168\u89d2\u30ab\u30bf\u30ab\u30ca\u306e\u307f\u8a31\u53ef\uff08\u3072\u3089\u304c\u306a\u5165\u529b\u6642\u306f\u81ea\u52d5\u5909\u63db\uff09\u3002\u65e5\u672c\u306e\u6c0f\u540d\u5165\u529b\u306b\u7279\u6709\u306e\u8aad\u307f\u4eee\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 3\u301c3; \u89b3\u5bdf\u5024 '\u30e4\u30de\u30c0', '\u30b5\u30c8\u30a6'; null 18/31\u3002",
                                        "example": "\u30e4\u30de\u30c0",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "kana02": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 32,
                                        "title": "\u30e1\u30a4\uff08\u5165\u529b\uff09",
                                        "description": "\u540d\u306e\u30ab\u30bf\u30ab\u30ca\u8aad\u307f\u3002\u5168\u89d2\u30ab\u30bf\u30ab\u30ca\u306e\u307f\u8a31\u53ef\uff08\u3072\u3089\u304c\u306a\u5165\u529b\u6642\u306f\u81ea\u52d5\u5909\u63db\uff09\u3002\u65e5\u672c\u306e\u6c0f\u540d\u5165\u529b\u306b\u7279\u6709\u306e\u8aad\u307f\u4eee\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 3\u301c3; \u89b3\u5bdf\u5024 '\u30a2\u30ea\u30b9', '\u30cf\u30ca\u30b3', '\u30bf\u30ed\u30a6'; null 18/31\u3002",
                                        "example": "\u30a2\u30ea\u30b9",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "companyName": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 32,
                                        "title": "\u4f1a\u793e\u540d\uff08\u5165\u529b\uff09",
                                        "description": "\u6cd5\u4eba\u9867\u5ba2\u306e\u793e\u540d\u3002B2B\u53d6\u5f15\u3084\u30a4\u30f3\u30dc\u30a4\u30b9\u3067\u4f7f\u7528 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c11; \u89b3\u5bdf\u5024 'Acme Corp.', '\u682a\u5f0f\u4f1a\u793eEC-CUBE'; null 24/32\u3002",
                                        "example": "Acme Corp.",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "phoneNumber": {
                                        "title": "\u96fb\u8a71\u756a\u53f7\uff08\u5165\u529b\uff09",
                                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u3002Fake corpus\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3060\u304c\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3059\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c10; \u89b3\u5bdf\u5024 '0312345678', '0901234567', '0612345678'; null 18/33\u3002",
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 13,
                                        "example": "0312345678",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "postalCode": {
                                        "title": "\u90f5\u4fbf\u756a\u53f7\uff08\u5165\u529b\uff09",
                                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u6709\u7121\u3092\u3069\u3061\u3089\u3082\u53d7\u3051\u5165\u308c\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 7\u301c8; \u89b3\u5bdf\u5024 '1500001', '1000005', '5300001', '530-0001'; null 18/33\u3002",
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "example": "1500001",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "pref": {
                                        "title": "\u90fd\u9053\u5e9c\u770c\uff08\u5165\u529b\uff09",
                                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u90fd\u9053\u5e9c\u770cID\u3002\u4f4f\u6240\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u72b6\u614b\u3067\u306f0\u3001\u78ba\u5b9a\u4f4f\u6240\u3067\u306f1\u301c47\u3092\u4f7f\u3046\u3002 Fake\u89b3\u5bdf\u6570\u5024 13\u301c27; \u89b3\u5bdf\u5024 '13', '27'; null 3/9\u3002",
                                        "type": [
                                            "integer",
                                            "null"
                                        ],
                                        "example": 13,
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "addr01": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 32,
                                        "title": "\u5e02\u533a\u753a\u6751\uff08\u5165\u529b\uff09",
                                        "description": "\u90fd\u9053\u5e9c\u770c\u3088\u308a\u4e0b\u4f4d\u306e\u5e02\u533a\u753a\u6751\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 3\u301c7; \u89b3\u5bdf\u5024 '\u6e0b\u8c37\u533a', '\u5343\u4ee3\u7530\u533a', '\u5927\u962a\u5e02\u5317\u533a', '\u5927\u962a\u5e02\u5317\u533a\u6885\u7530'; null 18/33\u3002",
                                        "example": "\u6e0b\u8c37\u533a",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "addr02": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 32,
                                        "title": "\u756a\u5730\u30fb\u5efa\u7269\u540d\uff08\u5165\u529b\uff09",
                                        "description": "\u756a\u5730\u30fb\u30d3\u30eb\u540d\u30fb\u90e8\u5c4b\u756a\u53f7\u7b49\u306e\u8a73\u7d30\u4f4f\u6240 Fake\u89b3\u5bdf\u6587\u5b57\u9577 5\u301c8; \u89b3\u5bdf\u5024 '\u795e\u5bae\u524d1-1-1', '\u4e38\u306e\u51852-2-2', '\u6885\u75301-1-1', '1-2-3'; null 18/33\u3002",
                                        "example": "\u795e\u5bae\u524d1-1-1",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    }
                                },
                                "required": [
                                    "email"
                                ]
                            }
                        }
                    },
                    "required": true
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/POST/mypage/changeResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/mypage/change-complete": {
            "get": {
                "operationId": "goMypageChangeComplete",
                "summary": "ALPS `goMypageChangeComplete` \u306b\u5bfe\u5fdc\u3059\u308b GET \u64cd\u4f5c\u3002",
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/mypage/change-completeResponse"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/mypage/favorite": {
            "post": {
                "operationId": "doAddFavorite",
                "summary": "ALPS `doAddFavorite` \u306b\u5bfe\u5fdc\u3059\u308b POST \u64cd\u4f5c\u3002",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "productCode": {
                                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9\uff08\u5165\u529b\uff09",
                                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 \u5546\u54c1\u3092\u8b58\u5225\u3059\u308bSKU\u3002Fake corpus\u3067\u306fASCII\u82f1\u6570\u30fb\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3067\u3001\u53d7\u6ce8\u660e\u7d30/\u30ab\u30fc\u30c8\u660e\u7d30\u306e\u7d50\u5408\u30ad\u30fc\u306b\u306a\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c26\u3002",
                                        "type": "string",
                                        "minLength": 0,
                                        "maxLength": 64,
                                        "example": "sample-001",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    }
                                },
                                "required": [
                                    "productCode"
                                ]
                            }
                        }
                    },
                    "required": true
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/POST/mypage/favoriteResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            },
            "delete": {
                "operationId": "doRemoveFavorite",
                "summary": "EC-CUBE doRemoveFavorite \u2014 \u304a\u6c17\u306b\u5165\u308a\u304b\u3089\u524a\u9664 (idempotent inverse\nof Pilot 13). DELETE is idempotent (ALPS type=idempotent):\nre-removing an already-absent item returns 200 with\nalreadyAbsent=true rather than 404. The flag lets the UI\ndistinguish first-remove from re-remove without leaking the\nunderlying state.",
                "description": "Unlike onPost, we do NOT validate that productCode resolves to\na real product \u2014 DELETE removes a stored row, not a product.",
                "parameters": [
                    {
                        "name": "productCode",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "\u5546\u54c1\u30b3\u30fc\u30c9\uff08\u5165\u529b\uff09 - SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 \u5546\u54c1\u3092\u8b58\u5225\u3059\u308bSKU\u3002Fake corpus\u3067\u306fASCII\u82f1\u6570\u30fb\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3067\u3001\u53d7\u6ce8\u660e\u7d30/\u30ab\u30fc\u30c8\u660e\u7d30\u306e\u7d50\u5408\u30ad\u30fc\u306b\u306a\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c26\u3002",
                        "example": "sample-001"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/DELETE/mypage/favoriteResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/mypage/favorite-list": {
            "get": {
                "operationId": "goFavoriteList",
                "summary": "ALPS `goFavoriteList` \u306b\u5bfe\u5fdc\u3059\u308b GET \u64cd\u4f5c\u3002",
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/mypage/favorite-listResponse"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/mypage/history": {
            "get": {
                "operationId": "goMypageHistory",
                "summary": "ALPS `goMypageHistory` \u306b\u5bfe\u5fdc\u3059\u308b GET \u64cd\u4f5c\u3002",
                "parameters": [
                    {
                        "name": "orderNo",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "\u6ce8\u6587\u756a\u53f7\uff08\u5165\u529b\uff09 - \u9867\u5ba2\u5411\u3051\u306e\u6ce8\u6587\u756a\u53f7\u3002\u30d5\u30a9\u30fc\u30de\u30c3\u30c8\u306f\u30ab\u30b9\u30bf\u30de\u30a4\u30ba\u53ef\u80fd Fake\u89b3\u5bdf\u6587\u5b57\u9577 32\u301c32; \u89b3\u5bdf\u5024 'past0000000000000000000000000001'\u3002",
                        "example": "past0000000000000000000000000001"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/mypage/historyResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/mypage/order-history": {
            "get": {
                "operationId": "goOrderHistory",
                "summary": "ALPS `goOrderHistory` \u306b\u5bfe\u5fdc\u3059\u308b GET \u64cd\u4f5c\u3002",
                "parameters": [
                    {
                        "name": "historyLimit",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        },
                        "description": "\u4e00\u89a7\u5236\u5fa1\u9805\u76ee\uff08\u5165\u529b\uff09 - /mypage/order-history \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8fd4\u3059\u4e00\u89a7\u5236\u5fa1\u9805\u76ee\u3002\u4e00\u89a7\u3001\u96c6\u8a08\u3001CSV\u51e6\u7406\u7d50\u679c\u306e\u898f\u6a21\u3092\u8868\u3059\u975e\u8ca0\u306e\u6570\u5024\u3002"
                    },
                    {
                        "name": "offset",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        },
                        "description": "\u958b\u59cb\u4f4d\u7f6e\uff08\u5165\u529b\uff09 - /mypage/order-history \u306e\u4e00\u89a7\u8868\u793a\u3092\u5236\u5fa1\u3059\u308b\u30da\u30fc\u30b8\u30f3\u30b0/\u691c\u7d22\u6761\u4ef6\u3002\u4ef6\u6570\u3001\u958b\u59cb\u4f4d\u7f6e\u3001\u4e26\u3073\u9806\u3001\u524d\u5f8c\u30ea\u30f3\u30af\u3092\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u304c\u518d\u73fe\u3059\u308b\u305f\u3081\u306e\u5024\u3002"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/mypage/order-historyResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/mypage/reorder": {
            "post": {
                "operationId": "doReorder",
                "summary": "ALPS `doReorder` \u306b\u5bfe\u5fdc\u3059\u308b POST \u64cd\u4f5c\u3002",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "orderNo": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 64,
                                        "title": "\u6ce8\u6587\u756a\u53f7\uff08\u5165\u529b\uff09",
                                        "description": "\u9867\u5ba2\u5411\u3051\u306e\u6ce8\u6587\u756a\u53f7\u3002\u30d5\u30a9\u30fc\u30de\u30c3\u30c8\u306f\u30ab\u30b9\u30bf\u30de\u30a4\u30ba\u53ef\u80fd Fake\u89b3\u5bdf\u6587\u5b57\u9577 32\u301c32; \u89b3\u5bdf\u5024 'past0000000000000000000000000001'\u3002",
                                        "example": "past0000000000000000000000000001",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    }
                                },
                                "required": [
                                    "orderNo"
                                ]
                            }
                        }
                    },
                    "required": true
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/POST/mypage/reorderResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/mypage/withdraw": {
            "get": {
                "operationId": "goMypageWithdraw",
                "summary": "EC-CUBE goMypageWithdraw \u2014 show the withdrawal confirmation page.",
                "description": "Pure form-info endpoint: no Be Framework involved, no domain\nlogic. Authenticated (mirrors Pilot 8 behavior): returns 401\ndirectly from the Resource when no session is present.\n\nSurfaces the current customer's email + name01/name02 so the\nconfirm page can render \"\u9000\u4f1a\u3055\u308c\u308b\u30a2\u30ab\u30a6\u30f3\u30c8: name01 name02\n(email)\".",
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/mypage/withdrawResponse"
                                }
                            }
                        }
                    }
                }
            },
            "post": {
                "operationId": "doWithdrawCustomer",
                "summary": "ALPS `doWithdrawCustomer` \u306b\u5bfe\u5fdc\u3059\u308b POST \u64cd\u4f5c\u3002",
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/POST/mypage/withdrawResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/mypage/withdraw-complete": {
            "get": {
                "operationId": "goMypageWithdrawComplete",
                "summary": "ALPS `goMypageWithdrawComplete` \u306b\u5bfe\u5fdc\u3059\u308b GET \u64cd\u4f5c\u3002",
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/mypage/withdraw-completeResponse"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/mypage/withdraw-confirm": {
            "get": {
                "operationId": "goMypageWithdrawConfirm",
                "summary": "ALPS `goMypageWithdrawConfirm` \u306b\u5bfe\u5fdc\u3059\u308b GET \u64cd\u4f5c\u3002",
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/mypage/withdraw-confirmResponse"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/shopping/checkout": {
            "post": {
                "operationId": "doCheckout",
                "summary": "Phase B Slice 9: the domain parameter arrives from the HTTP request body.",
                "description": "`$preOrderId` is a 40-hex-char id that PreOrderId Semantic\nformat-validates. The CSRF boundary token is enforced declaratively by\nthe BEAR.Csrf CsrfToken attribute.",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "preOrderId": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "title": "\u4eee\u6ce8\u6587ID\uff08\u5165\u529b\uff09",
                                        "description": "\u8cfc\u5165\u30d5\u30ed\u30fc\u306e\u4e00\u6642\u30bb\u30c3\u30b7\u30e7\u30f3\u30c8\u30fc\u30af\u30f3\uff08SHA1\u30cf\u30c3\u30b7\u30e5\uff09\u3002\u30ab\u30fc\u30c8\u3068\u53d7\u6ce8\u3092\u7d10\u3065\u3051\u308b\u3002\u4e88\u7d04\u6ce8\u6587\uff08pre-order\uff09ID\u3067\u306f\u306a\u3044\u3002\u30c1\u30a7\u30c3\u30af\u30a2\u30a6\u30c8\u958b\u59cb\u6642\u306b\u751f\u6210\u3001\u6ce8\u6587\u78ba\u5b9a\u307e\u305f\u306f\u30ab\u30fc\u30c8\u7834\u68c4\u3067\u6d88\u53bb Fake\u89b3\u5bdf\u6587\u5b57\u9577 40\u301c40; \u89b3\u5bdf\u5024 'deadbeefcafe1234567890abcdef01234567890a', 'deadbeefcafe1234567890abcdef01234567890b', 'aaaa00000000000000000000000000000000aaaa', 'past00000000000000000000000000000000past', 'deadbeefcafe1234567890abcdef01234567890c', 'bbbb00000000000000000000000000000000bbbb', 'cccc00000000000000000000000000000000cccc', 'aceface0000000000000000000000000000a11ce'\u3002",
                                        "example": "deadbeefcafe1234567890abcdef01234567890a",
                                        "minLength": 0,
                                        "maxLength": 128,
                                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002 Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    }
                                },
                                "required": [
                                    "preOrderId"
                                ]
                            }
                        }
                    },
                    "required": true
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/POST/shopping/checkoutResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/shopping/complete": {
            "get": {
                "operationId": "goShoppingComplete",
                "summary": "ALPS `goShoppingComplete` \u306b\u5bfe\u5fdc\u3059\u308b GET \u64cd\u4f5c\u3002",
                "parameters": [
                    {
                        "name": "orderNo",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string"
                        },
                        "description": "\u6ce8\u6587\u756a\u53f7\uff08\u5165\u529b\uff09 - \u9867\u5ba2\u5411\u3051\u306e\u6ce8\u6587\u756a\u53f7\u3002\u30d5\u30a9\u30fc\u30de\u30c3\u30c8\u306f\u30ab\u30b9\u30bf\u30de\u30a4\u30ba\u53ef\u80fd Fake\u89b3\u5bdf\u6587\u5b57\u9577 32\u301c32; \u89b3\u5bdf\u5024 'past0000000000000000000000000001'\u3002",
                        "example": "past0000000000000000000000000001"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/shopping/completeResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/shopping/confirm": {
            "get": {
                "operationId": "goShopping",
                "summary": "ALPS `goShopping` \u306b\u5bfe\u5fdc\u3059\u308b GET \u64cd\u4f5c\u3002",
                "parameters": [
                    {
                        "name": "preOrderId",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string"
                        },
                        "description": "\u4eee\u6ce8\u6587ID\uff08\u5165\u529b\uff09 - \u8cfc\u5165\u30d5\u30ed\u30fc\u306e\u4e00\u6642\u30bb\u30c3\u30b7\u30e7\u30f3\u30c8\u30fc\u30af\u30f3\uff08SHA1\u30cf\u30c3\u30b7\u30e5\uff09\u3002\u30ab\u30fc\u30c8\u3068\u53d7\u6ce8\u3092\u7d10\u3065\u3051\u308b\u3002\u4e88\u7d04\u6ce8\u6587\uff08pre-order\uff09ID\u3067\u306f\u306a\u3044\u3002\u30c1\u30a7\u30c3\u30af\u30a2\u30a6\u30c8\u958b\u59cb\u6642\u306b\u751f\u6210\u3001\u6ce8\u6587\u78ba\u5b9a\u307e\u305f\u306f\u30ab\u30fc\u30c8\u7834\u68c4\u3067\u6d88\u53bb Fake\u89b3\u5bdf\u6587\u5b57\u9577 40\u301c40; \u89b3\u5bdf\u5024 'deadbeefcafe1234567890abcdef01234567890a', 'deadbeefcafe1234567890abcdef01234567890b', 'aaaa00000000000000000000000000000000aaaa', 'past00000000000000000000000000000000past', 'deadbeefcafe1234567890abcdef01234567890c', 'bbbb00000000000000000000000000000000bbbb', 'cccc00000000000000000000000000000000cccc', 'aceface0000000000000000000000000000a11ce'\u3002",
                        "example": "deadbeefcafe1234567890abcdef01234567890a"
                    },
                    {
                        "name": "paymentMethodId",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "integer"
                        },
                        "description": "\u652f\u6255\u65b9\u6cd5ID - \u53d7\u6ce8\u306b\u7d10\u3065\u304f\u652f\u6255\u65b9\u6cd5\u30de\u30b9\u30bfID\u3002Fake/EC-CUBE\u5883\u754c\u3067\u306fDB\u63a1\u756a\u5024\u3068\u3057\u3066\u6271\u3046\u3002",
                        "example": "2"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/shopping/confirmResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            },
            "post": {
                "operationId": "goShopping",
                "summary": "HTML checkout form posts the selected payment field as `payment`.",
                "description": "Keep GET query compatibility while accepting the real browser form.",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "preOrderId": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "title": "\u4eee\u6ce8\u6587ID\uff08\u5165\u529b\uff09",
                                        "description": "\u8cfc\u5165\u30d5\u30ed\u30fc\u306e\u4e00\u6642\u30bb\u30c3\u30b7\u30e7\u30f3\u30c8\u30fc\u30af\u30f3\uff08SHA1\u30cf\u30c3\u30b7\u30e5\uff09\u3002\u30ab\u30fc\u30c8\u3068\u53d7\u6ce8\u3092\u7d10\u3065\u3051\u308b\u3002\u4e88\u7d04\u6ce8\u6587\uff08pre-order\uff09ID\u3067\u306f\u306a\u3044\u3002\u30c1\u30a7\u30c3\u30af\u30a2\u30a6\u30c8\u958b\u59cb\u6642\u306b\u751f\u6210\u3001\u6ce8\u6587\u78ba\u5b9a\u307e\u305f\u306f\u30ab\u30fc\u30c8\u7834\u68c4\u3067\u6d88\u53bb Fake\u89b3\u5bdf\u6587\u5b57\u9577 40\u301c40; \u89b3\u5bdf\u5024 'deadbeefcafe1234567890abcdef01234567890a', 'deadbeefcafe1234567890abcdef01234567890b', 'aaaa00000000000000000000000000000000aaaa', 'past00000000000000000000000000000000past', 'deadbeefcafe1234567890abcdef01234567890c', 'bbbb00000000000000000000000000000000bbbb', 'cccc00000000000000000000000000000000cccc', 'aceface0000000000000000000000000000a11ce'\u3002",
                                        "default": "aceface0000000000000000000000000000a11ce",
                                        "example": "deadbeefcafe1234567890abcdef01234567890a",
                                        "minLength": 0,
                                        "maxLength": 128,
                                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002 Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "payment": {
                                        "type": [
                                            "string",
                                            "integer",
                                            "null"
                                        ],
                                        "title": "\u652f\u6255\u65b9\u6cd5ID\uff08\u78ba\u8a8d\u30d5\u30a9\u30fc\u30e0\u5165\u529b\uff09",
                                        "description": "/shopping \u306e\u78ba\u8a8d\u30d5\u30a9\u30fc\u30e0\u3067\u9078\u629e\u3055\u308c\u305f\u652f\u6255\u65b9\u6cd5ID\u3002HTML form\u3067\u306f `payment` \u540d\u3067\u9001\u4fe1\u3055\u308c\u3001Resource\u3067 ConfirmOrderInput.paymentMethodId \u306b\u6e21\u3059\u3002",
                                        "default": 2,
                                        "example": 2,
                                        "minLength": 0,
                                        "maxLength": 128,
                                        "$comment": "\u652f\u6255\u65b9\u6cd5ID\u306f\u696d\u52d9\u4e0aID\u3060\u304c\u3001HTTP\u30d5\u30a9\u30fc\u30e0\u3067\u306f\u6587\u5b57\u5217\u3068\u3057\u3066\u5c4a\u304f\u3002Resource/Semantic\u5c64\u306e\u691c\u8a3c\u3092\u901a\u3059\u305f\u3081transport schema\u3067\u306fstring|integer\u3092\u8a31\u5bb9\u3059\u308b\u3002 Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    }
                                },
                                "required": [
                                    "preOrderId"
                                ]
                            }
                        }
                    },
                    "required": true
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/shopping/confirmResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/shopping/error": {
            "get": {
                "operationId": "goShoppingError",
                "summary": "ALPS `goShoppingError` \u306b\u5bfe\u5fdc\u3059\u308b GET \u64cd\u4f5c\u3002",
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/shopping/errorResponse"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/shopping/login": {
            "get": {
                "operationId": "goShoppingLogin",
                "summary": "ALPS `goShoppingLogin` \u306b\u5bfe\u5fdc\u3059\u308b GET \u64cd\u4f5c\u3002",
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/shopping/loginResponse"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/shopping/non-member": {
            "get": {
                "operationId": "goShoppingNonMember",
                "summary": "EC-CUBE goShoppingNonMember \u2014 show the guest-info entry form.",
                "description": "Pure form-info endpoint: no Be Framework involved, no domain\nlogic. Anonymous-accessible (returns 200 regardless of session\nstate). Fields mirror SubmitNonMemberInput. `csrfToken` carries\nthe trusted reference token so the HTML form can pass the\nsubsequent POST's CSRF boundary.",
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/shopping/non-memberResponse"
                                }
                            }
                        }
                    }
                }
            },
            "post": {
                "operationId": "doSubmitNonMember",
                "summary": "EC-CUBE doSubmitNonMember \u2014 accept guest shipping info and return\nthe synthesised preOrderId.",
                "description": "Phase B Slice 9: every guest form field is user-controlled input.\nDeclared as taint sources so Psalm can trace them downstream.\nSemantic value objects format-validate but do not universally\nescape \u2014 sinks downstream remain responsible for their own\ndefence (bound params, HTML escape on render).",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "name01": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 80,
                                        "title": "\u59d3\uff08\u5165\u529b\uff09",
                                        "description": "\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u30fb\u304a\u554f\u3044\u5408\u308f\u305b\u3067\u5171\u901a\u4f7f\u7528\u3055\u308c\u308b\u59d3 Fake\u89b3\u5bdf\u6587\u5b57\u9577 2\u301c2; \u89b3\u5bdf\u5024 '\u9234\u6728', '\u5c71\u7530', '\u4f50\u85e4', '\u9ad8\u6a4b', '\u9000\u4f1a'\u3002",
                                        "example": "\u9234\u6728",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "name02": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 80,
                                        "title": "\u540d\uff08\u5165\u529b\uff09",
                                        "description": "\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u30fb\u304a\u554f\u3044\u5408\u308f\u305b\u3067\u5171\u901a\u4f7f\u7528\u3055\u308c\u308b\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 1\u301c3; \u89b3\u5bdf\u5024 '\u30a2\u30ea\u30b9', '\u592a\u90ce', '\u6b21\u90ce', '\u82b1\u5b50', '\u4e09\u90ce', '\u6e08'\u3002",
                                        "example": "\u30a2\u30ea\u30b9",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "kana01": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 32,
                                        "title": "\u30bb\u30a4\uff08\u5165\u529b\uff09",
                                        "description": "\u59d3\u306e\u30ab\u30bf\u30ab\u30ca\u8aad\u307f\u3002\u5168\u89d2\u30ab\u30bf\u30ab\u30ca\u306e\u307f\u8a31\u53ef\uff08\u3072\u3089\u304c\u306a\u5165\u529b\u6642\u306f\u81ea\u52d5\u5909\u63db\uff09\u3002\u65e5\u672c\u306e\u6c0f\u540d\u5165\u529b\u306b\u7279\u6709\u306e\u8aad\u307f\u4eee\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 3\u301c3; \u89b3\u5bdf\u5024 '\u30e4\u30de\u30c0', '\u30b5\u30c8\u30a6'; null 18/31\u3002",
                                        "example": "\u30e4\u30de\u30c0",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "kana02": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 32,
                                        "title": "\u30e1\u30a4\uff08\u5165\u529b\uff09",
                                        "description": "\u540d\u306e\u30ab\u30bf\u30ab\u30ca\u8aad\u307f\u3002\u5168\u89d2\u30ab\u30bf\u30ab\u30ca\u306e\u307f\u8a31\u53ef\uff08\u3072\u3089\u304c\u306a\u5165\u529b\u6642\u306f\u81ea\u52d5\u5909\u63db\uff09\u3002\u65e5\u672c\u306e\u6c0f\u540d\u5165\u529b\u306b\u7279\u6709\u306e\u8aad\u307f\u4eee\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 3\u301c3; \u89b3\u5bdf\u5024 '\u30a2\u30ea\u30b9', '\u30cf\u30ca\u30b3', '\u30bf\u30ed\u30a6'; null 18/31\u3002",
                                        "example": "\u30a2\u30ea\u30b9",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "email": {
                                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\uff08\u5165\u529b\uff09",
                                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u3002\u4f1a\u54e1\u767b\u9332\u30fb\u30ed\u30b0\u30a4\u30f3\u30fb\u901a\u77e5\u3067\u5171\u901a\u306b\u4f7f\u3046\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 15\u301c58; \u89b3\u5bdf\u5024 'bob@example.com', 'login-test@example.com', 'alice@example.com', 'carol@example.com', 'provisional@example.com', 'withdrawn-30000000aaaa3333bbbb4444cccc5555@example.invalid'\u3002",
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 254,
                                        "example": "alice@example.com",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "phoneNumber": {
                                        "title": "\u96fb\u8a71\u756a\u53f7\uff08\u5165\u529b\uff09",
                                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u3002Fake corpus\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3060\u304c\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3059\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c10; \u89b3\u5bdf\u5024 '0312345678', '0901234567', '0612345678'; null 18/33\u3002",
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 13,
                                        "example": "0312345678",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "postalCode": {
                                        "title": "\u90f5\u4fbf\u756a\u53f7\uff08\u5165\u529b\uff09",
                                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u6709\u7121\u3092\u3069\u3061\u3089\u3082\u53d7\u3051\u5165\u308c\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 7\u301c8; \u89b3\u5bdf\u5024 '1500001', '1000005', '5300001', '530-0001'; null 18/33\u3002",
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "example": "1500001",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "pref": {
                                        "title": "\u90fd\u9053\u5e9c\u770c\uff08\u5165\u529b\uff09",
                                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u90fd\u9053\u5e9c\u770cID\u3002\u4f4f\u6240\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u72b6\u614b\u3067\u306f0\u3001\u78ba\u5b9a\u4f4f\u6240\u3067\u306f1\u301c47\u3092\u4f7f\u3046\u3002 Fake\u89b3\u5bdf\u6570\u5024 13\u301c27; \u89b3\u5bdf\u5024 '13', '27'; null 3/9\u3002",
                                        "type": [
                                            "integer",
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 2,
                                        "pattern": "^\\d*$",
                                        "example": 13,
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "addr01": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 32,
                                        "title": "\u5e02\u533a\u753a\u6751\uff08\u5165\u529b\uff09",
                                        "description": "\u90fd\u9053\u5e9c\u770c\u3088\u308a\u4e0b\u4f4d\u306e\u5e02\u533a\u753a\u6751\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 3\u301c7; \u89b3\u5bdf\u5024 '\u6e0b\u8c37\u533a', '\u5343\u4ee3\u7530\u533a', '\u5927\u962a\u5e02\u5317\u533a', '\u5927\u962a\u5e02\u5317\u533a\u6885\u7530'; null 18/33\u3002",
                                        "example": "\u6e0b\u8c37\u533a",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "addr02": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 32,
                                        "title": "\u756a\u5730\u30fb\u5efa\u7269\u540d\uff08\u5165\u529b\uff09",
                                        "description": "\u756a\u5730\u30fb\u30d3\u30eb\u540d\u30fb\u90e8\u5c4b\u756a\u53f7\u7b49\u306e\u8a73\u7d30\u4f4f\u6240 Fake\u89b3\u5bdf\u6587\u5b57\u9577 5\u301c8; \u89b3\u5bdf\u5024 '\u795e\u5bae\u524d1-1-1', '\u4e38\u306e\u51852-2-2', '\u6885\u75301-1-1', '1-2-3'; null 18/33\u3002",
                                        "example": "\u795e\u5bae\u524d1-1-1",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "sessionPrefix": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 128,
                                        "title": "\u30bb\u30c3\u30b7\u30e7\u30f3\u63a5\u982d\u8f9e\uff08\u5165\u529b\uff09",
                                        "description": "\u8cfc\u5165\u30d5\u30ed\u30fc\u306e\u30ab\u30fc\u30c8\u30ad\u30fc\u3092\u69cb\u6210\u3059\u308b\u30bb\u30c3\u30b7\u30e7\u30f3\u30b9\u30b3\u30fc\u30d7\u306e\u63a5\u982d\u8f9e\u3002saleTypeId \u3068\u7d44\u307f\u5408\u308f\u305b\u3066\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306e\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 16\u301c23; \u89b3\u5bdf\u5024 'session-prefix-1', 'session-checkout-pilot5'\u3002",
                                        "default": "session-prefix-1",
                                        "example": "session-prefix-1",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    }
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/POST/shopping/non-memberResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/shopping/shipping": {
            "get": {
                "operationId": "goShoppingShipping",
                "summary": "ALPS `goShoppingShipping` \u306b\u5bfe\u5fdc\u3059\u308b GET \u64cd\u4f5c\u3002",
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/shopping/shippingResponse"
                                }
                            }
                        }
                    }
                }
            },
            "post": {
                "operationId": "doSelectShippingAddress",
                "summary": "EC-CUBE doSelectShippingAddress \u2014 accept the selected address-book row.",
                "description": "This closes the former ActionRedirect gap for the customer checkout\nroute. The current shopping renderer does not yet hydrate the address\nradio list, so the resource records the selected id in the response\nsurface and returns to the shopping page. The full pre-order shipping\npersistence is intentionally left to the existing checkout enrichment\nbacklog; this method makes the route executable without a placeholder.",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "shippingAddressId": {
                                        "type": [
                                            "string",
                                            "integer",
                                            "null"
                                        ],
                                        "title": "\u914d\u9001\u5148ID\uff08\u5165\u529b\uff09",
                                        "description": "/shopping/shipping \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u5bfe\u8c61\u3092\u8b58\u5225\u3059\u308b\u914d\u9001\u5148ID\u3002DB\u63a1\u756aID\u3001Fake\u6587\u5b57\u5217ID\u3001\u4e92\u63db\u5883\u754cID\u306e\u3069\u308c\u306b\u8a72\u5f53\u3059\u308b\u304b\u3092schema\u306e\u578b\u3068\u30b3\u30e1\u30f3\u30c8\u3067\u5206\u3051\u308b\u3002",
                                        "$comment": "\u914d\u9001\u5148ID\uff08\u5165\u529b\uff09\u306f\u696d\u52d9\u4e0aID\u3060\u304c\u3001HTTP\u30d5\u30a9\u30fc\u30e0\u3067\u306f\u6587\u5b57\u5217\u3068\u3057\u3066\u5c4a\u304f\u3002Resource/Semantic\u5c64\u306e\u691c\u8a3c\u3092\u901a\u3059\u305f\u3081transport schema\u3067\u306fstring|integer\u3092\u8a31\u5bb9\u3059\u308b\u3002 Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation.",
                                        "minLength": 0,
                                        "maxLength": 128
                                    }
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/POST/shopping/shippingResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/shopping/shipping-edit": {
            "get": {
                "operationId": "goShoppingShippingEdit",
                "summary": "ALPS `goShoppingShippingEdit` \u306b\u5bfe\u5fdc\u3059\u308b GET \u64cd\u4f5c\u3002",
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/shopping/shipping-editResponse"
                                }
                            }
                        }
                    }
                }
            },
            "post": {
                "operationId": "doUpdateShippingAddress",
                "summary": "EC-CUBE doUpdateShippingAddress \u2014 accept the edited shipping address.",
                "description": "The BeMart checkout page still keeps the richer pre-order shipping\npersistence as a later enrichment. This method removes the former\nActionRedirect placeholder and gives the submitted address a concrete\nResource surface while returning the user to the main shopping page.",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "name01": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 80,
                                        "title": "\u59d3\uff08\u5165\u529b\uff09",
                                        "description": "\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u30fb\u304a\u554f\u3044\u5408\u308f\u305b\u3067\u5171\u901a\u4f7f\u7528\u3055\u308c\u308b\u59d3 Fake\u89b3\u5bdf\u6587\u5b57\u9577 2\u301c2; \u89b3\u5bdf\u5024 '\u9234\u6728', '\u5c71\u7530', '\u4f50\u85e4', '\u9ad8\u6a4b', '\u9000\u4f1a'\u3002",
                                        "default": "",
                                        "example": "\u9234\u6728",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "name02": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 80,
                                        "title": "\u540d\uff08\u5165\u529b\uff09",
                                        "description": "\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u30fb\u304a\u554f\u3044\u5408\u308f\u305b\u3067\u5171\u901a\u4f7f\u7528\u3055\u308c\u308b\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 1\u301c3; \u89b3\u5bdf\u5024 '\u30a2\u30ea\u30b9', '\u592a\u90ce', '\u6b21\u90ce', '\u82b1\u5b50', '\u4e09\u90ce', '\u6e08'\u3002",
                                        "default": "",
                                        "example": "\u30a2\u30ea\u30b9",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "kana01": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 32,
                                        "title": "\u30bb\u30a4\uff08\u5165\u529b\uff09",
                                        "description": "\u59d3\u306e\u30ab\u30bf\u30ab\u30ca\u8aad\u307f\u3002\u5168\u89d2\u30ab\u30bf\u30ab\u30ca\u306e\u307f\u8a31\u53ef\uff08\u3072\u3089\u304c\u306a\u5165\u529b\u6642\u306f\u81ea\u52d5\u5909\u63db\uff09\u3002\u65e5\u672c\u306e\u6c0f\u540d\u5165\u529b\u306b\u7279\u6709\u306e\u8aad\u307f\u4eee\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 3\u301c3; \u89b3\u5bdf\u5024 '\u30e4\u30de\u30c0', '\u30b5\u30c8\u30a6'; null 18/31\u3002",
                                        "example": "\u30e4\u30de\u30c0",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "kana02": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 32,
                                        "title": "\u30e1\u30a4\uff08\u5165\u529b\uff09",
                                        "description": "\u540d\u306e\u30ab\u30bf\u30ab\u30ca\u8aad\u307f\u3002\u5168\u89d2\u30ab\u30bf\u30ab\u30ca\u306e\u307f\u8a31\u53ef\uff08\u3072\u3089\u304c\u306a\u5165\u529b\u6642\u306f\u81ea\u52d5\u5909\u63db\uff09\u3002\u65e5\u672c\u306e\u6c0f\u540d\u5165\u529b\u306b\u7279\u6709\u306e\u8aad\u307f\u4eee\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 3\u301c3; \u89b3\u5bdf\u5024 '\u30a2\u30ea\u30b9', '\u30cf\u30ca\u30b3', '\u30bf\u30ed\u30a6'; null 18/31\u3002",
                                        "example": "\u30a2\u30ea\u30b9",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "companyName": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 32,
                                        "title": "\u4f1a\u793e\u540d\uff08\u5165\u529b\uff09",
                                        "description": "\u6cd5\u4eba\u9867\u5ba2\u306e\u793e\u540d\u3002B2B\u53d6\u5f15\u3084\u30a4\u30f3\u30dc\u30a4\u30b9\u3067\u4f7f\u7528 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c11; \u89b3\u5bdf\u5024 'Acme Corp.', '\u682a\u5f0f\u4f1a\u793eEC-CUBE'; null 24/32\u3002",
                                        "example": "Acme Corp.",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "postalCode": {
                                        "title": "\u90f5\u4fbf\u756a\u53f7\uff08\u5165\u529b\uff09",
                                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u6709\u7121\u3092\u3069\u3061\u3089\u3082\u53d7\u3051\u5165\u308c\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 7\u301c8; \u89b3\u5bdf\u5024 '1500001', '1000005', '5300001', '530-0001'; null 18/33\u3002",
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "example": "1500001",
                                        "default": "",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "pref": {
                                        "title": "\u90fd\u9053\u5e9c\u770c\uff08\u5165\u529b\uff09",
                                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u90fd\u9053\u5e9c\u770cID\u3002\u4f4f\u6240\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u72b6\u614b\u3067\u306f0\u3001\u78ba\u5b9a\u4f4f\u6240\u3067\u306f1\u301c47\u3092\u4f7f\u3046\u3002 Fake\u89b3\u5bdf\u6570\u5024 13\u301c27; \u89b3\u5bdf\u5024 '13', '27'; null 3/9\u3002",
                                        "type": [
                                            "integer",
                                            "null"
                                        ],
                                        "example": 13,
                                        "default": 0,
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "addr01": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 32,
                                        "title": "\u5e02\u533a\u753a\u6751\uff08\u5165\u529b\uff09",
                                        "description": "\u90fd\u9053\u5e9c\u770c\u3088\u308a\u4e0b\u4f4d\u306e\u5e02\u533a\u753a\u6751\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 3\u301c7; \u89b3\u5bdf\u5024 '\u6e0b\u8c37\u533a', '\u5343\u4ee3\u7530\u533a', '\u5927\u962a\u5e02\u5317\u533a', '\u5927\u962a\u5e02\u5317\u533a\u6885\u7530'; null 18/33\u3002",
                                        "default": "",
                                        "example": "\u6e0b\u8c37\u533a",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "addr02": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 32,
                                        "title": "\u756a\u5730\u30fb\u5efa\u7269\u540d\uff08\u5165\u529b\uff09",
                                        "description": "\u756a\u5730\u30fb\u30d3\u30eb\u540d\u30fb\u90e8\u5c4b\u756a\u53f7\u7b49\u306e\u8a73\u7d30\u4f4f\u6240 Fake\u89b3\u5bdf\u6587\u5b57\u9577 5\u301c8; \u89b3\u5bdf\u5024 '\u795e\u5bae\u524d1-1-1', '\u4e38\u306e\u51852-2-2', '\u6885\u75301-1-1', '1-2-3'; null 18/33\u3002",
                                        "default": "",
                                        "example": "\u795e\u5bae\u524d1-1-1",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "phoneNumber": {
                                        "title": "\u96fb\u8a71\u756a\u53f7\uff08\u5165\u529b\uff09",
                                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u3002Fake corpus\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3060\u304c\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3059\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c10; \u89b3\u5bdf\u5024 '0312345678', '0901234567', '0612345678'; null 18/33\u3002",
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 13,
                                        "example": "0312345678",
                                        "default": "",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    }
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/POST/shopping/shipping-editResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/shopping/shipping-multiple": {
            "get": {
                "operationId": "goShoppingShippingMultiple",
                "summary": "ALPS `goShoppingShippingMultiple` \u306b\u5bfe\u5fdc\u3059\u308b GET \u64cd\u4f5c\u3002",
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/shopping/shipping-multipleResponse"
                                }
                            }
                        }
                    }
                }
            },
            "post": {
                "operationId": "doSelectShippingAddress",
                "summary": "EC-CUBE doSelectShippingAddress \u2014 accept the multi-shipping allocation.",
                "description": "The current page exposes the allocation form shape but has no cart-item\nrows yet. The POST endpoint is still concrete: CSRF is enforced, the\ntransition is acknowledged, and the user returns to the shopping page.",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "allocations": {
                                        "type": [
                                            "array",
                                            "null"
                                        ],
                                        "title": "\u914d\u9001\u5272\u5f53\u4e00\u89a7\uff08\u5165\u529b\uff09",
                                        "description": "/shopping/shipping-multiple \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u914d\u9001\u5272\u5f53\u4e00\u89a7\u3002\u914d\u5217\u8981\u7d20\u306fALPS\u610f\u5473\u3068Fake\u89b3\u5bdf\u306b\u57fa\u3065\u304d\u3001\u56fa\u5b9a\u3067\u304d\u306a\u3044\u52d5\u7684\u5217\u306f\u4f8b\u5916\u7406\u7531\u3092\u53f0\u5e33\u5316\u3059\u308b\u3002",
                                        "items": {
                                            "type": "object",
                                            "title": "\u914d\u9001\u5272\u5f53\uff08\u5165\u529b\uff09",
                                            "description": "/shopping/shipping-multiple \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u914d\u9001\u5272\u5f53\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `allocations` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002",
                                            "properties": {
                                                "shippingAddressId": {
                                                    "type": [
                                                        "string",
                                                        "integer",
                                                        "null"
                                                    ],
                                                    "title": "\u914d\u9001\u5148ID\uff08\u5165\u529b\uff09",
                                                    "description": "/shopping/shipping-multiple \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u5bfe\u8c61\u3092\u8b58\u5225\u3059\u308b\u914d\u9001\u5148ID\u3002DB\u63a1\u756aID\u3001Fake\u6587\u5b57\u5217ID\u3001\u4e92\u63db\u5883\u754cID\u306e\u3069\u308c\u306b\u8a72\u5f53\u3059\u308b\u304b\u3092schema\u306e\u578b\u3068\u30b3\u30e1\u30f3\u30c8\u3067\u5206\u3051\u308b\u3002",
                                                    "$comment": "\u914d\u9001\u5148ID\uff08\u5165\u529b\uff09\u306f\u696d\u52d9\u4e0aID\u3060\u304c\u3001HTTP\u30d5\u30a9\u30fc\u30e0\u3067\u306f\u6587\u5b57\u5217\u3068\u3057\u3066\u5c4a\u304f\u3002Resource/Semantic\u5c64\u306e\u691c\u8a3c\u3092\u901a\u3059\u305f\u3081transport schema\u3067\u306fstring|integer\u3092\u8a31\u5bb9\u3059\u308b\u3002 Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation.",
                                                    "minLength": 0,
                                                    "maxLength": 128
                                                },
                                                "addressId": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ],
                                                    "title": "\u914d\u9001\u5148\u4f4f\u6240ID\uff08\u5165\u529b\uff09",
                                                    "description": "dtb_customer_address.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e AddressEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f 32\u6841hex \u3092\u751f\u6210\u3057\u3001SQL \u5b9f\u88c5\u306f dtb_customer_address.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u6240\u6709\u8005\u306f customerId\u3001AUTHZ \u691c\u67fb\u306f CustomerAddressUpdated / CustomerAddressDeleted \u3067 getById \u2192 customerId \u4e00\u81f4\u78ba\u8a8d\u306e\u9806\u3067\u5b9f\u65bd Fake\u89b3\u5bdf\u6587\u5b57\u9577 32\u301c32; \u89b3\u5bdf\u5024 'addr00000000000000000000000000a1'\u3002",
                                                    "example": "addr00000000000000000000000000a1",
                                                    "minLength": 0,
                                                    "maxLength": 128,
                                                    "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002 Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                                },
                                                "cartKey": {
                                                    "title": "\u30ab\u30fc\u30c8\u30ad\u30fc\uff08\u5165\u529b\uff09",
                                                    "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b \u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u30ad\u30fc\u3002ALPS\u306ecartKey\u306f\u30bb\u30c3\u30b7\u30e7\u30f3\u63a5\u982d\u8f9e\u3068\u8ca9\u58f2\u7a2e\u5225ID\u304b\u3089\u69cb\u6210\u3055\u308c\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 18\u301c23; \u89b3\u5bdf\u5024 'session-prefix-1_1', 'session-prefix-1_2', 'session-checkout-pilot5'\u3002",
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ],
                                                    "minLength": 0,
                                                    "maxLength": 128,
                                                    "example": "session-prefix-1_1",
                                                    "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                                },
                                                "productCode": {
                                                    "title": "\u5546\u54c1\u30b3\u30fc\u30c9\uff08\u5165\u529b\uff09",
                                                    "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 \u5546\u54c1\u3092\u8b58\u5225\u3059\u308bSKU\u3002Fake corpus\u3067\u306fASCII\u82f1\u6570\u30fb\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3067\u3001\u53d7\u6ce8\u660e\u7d30/\u30ab\u30fc\u30c8\u660e\u7d30\u306e\u7d50\u5408\u30ad\u30fc\u306b\u306a\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c26\u3002",
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ],
                                                    "minLength": 0,
                                                    "maxLength": 64,
                                                    "example": "sample-001",
                                                    "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                                },
                                                "quantity": {
                                                    "title": "\u6570\u91cf\uff08\u5165\u529b\uff09",
                                                    "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 Fake\u89b3\u5bdf\u6570\u5024 1\u301c3; \u89b3\u5bdf\u5024 '1', '2', '3'\u3002",
                                                    "type": [
                                                        "integer",
                                                        "string",
                                                        "null"
                                                    ],
                                                    "example": "1",
                                                    "$comment": "\u6570\u91cf\uff08\u5165\u529b\uff09\u306f\u672c\u6765\u6570\u5024/\u5217\u6319\u306e\u696d\u52d9\u5024\u3060\u304c\u3001HTTP\u30d5\u30a9\u30fc\u30e0\u3067\u306f\u6587\u5b57\u5217\u3068\u3057\u3066\u5c4a\u304f\u3002Resource/Semantic\u5c64\u306e400\u5fdc\u7b54\u3092\u596a\u308f\u306a\u3044\u305f\u3081transport schema\u3067\u306f\u6587\u5b57\u5217\u5165\u529b\u3092\u8a31\u5bb9\u3059\u308b\u3002 Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                                }
                                            },
                                            "additionalProperties": false,
                                            "$comment": "\u914d\u5217\u8981\u7d20\u306fFake/Resource\u3067\u89b3\u5bdf\u3055\u308c\u305f\u65e2\u77e5property\u306b\u56fa\u5b9a\u3059\u308b\u3002\u65b0\u3057\u3044\u5217\u304c\u5fc5\u8981\u306b\u306a\u3063\u305f\u5834\u5408\u306fSemantic-Ex\u89b3\u5bdf\u306b\u8ffd\u52a0\u3057\u3066schema\u3092\u66f4\u65b0\u3059\u308b\u3002 Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                        },
                                        "minItems": 0,
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    }
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/POST/shopping/shipping-multipleResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/shopping/shipping-multiple-edit": {
            "get": {
                "operationId": "goShoppingShippingMultipleEdit",
                "summary": "ALPS `goShoppingShippingMultipleEdit` \u306b\u5bfe\u5fdc\u3059\u308b GET \u64cd\u4f5c\u3002",
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/shopping/shipping-multiple-editResponse"
                                }
                            }
                        }
                    }
                }
            },
            "post": {
                "operationId": "doUpdateShippingAddress",
                "summary": "EC-CUBE doUpdateShippingAddress \u2014 add/update an address for the\nmulti-destination checkout branch.",
                "description": "This mirrors {@see \\ShippingEdit::onPost()} but returns to the\nmulti-shipping screen instead of the main shopping screen.",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "name01": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 80,
                                        "title": "\u59d3\uff08\u5165\u529b\uff09",
                                        "description": "\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u30fb\u304a\u554f\u3044\u5408\u308f\u305b\u3067\u5171\u901a\u4f7f\u7528\u3055\u308c\u308b\u59d3 Fake\u89b3\u5bdf\u6587\u5b57\u9577 2\u301c2; \u89b3\u5bdf\u5024 '\u9234\u6728', '\u5c71\u7530', '\u4f50\u85e4', '\u9ad8\u6a4b', '\u9000\u4f1a'\u3002",
                                        "default": "",
                                        "example": "\u9234\u6728",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "name02": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 80,
                                        "title": "\u540d\uff08\u5165\u529b\uff09",
                                        "description": "\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u30fb\u304a\u554f\u3044\u5408\u308f\u305b\u3067\u5171\u901a\u4f7f\u7528\u3055\u308c\u308b\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 1\u301c3; \u89b3\u5bdf\u5024 '\u30a2\u30ea\u30b9', '\u592a\u90ce', '\u6b21\u90ce', '\u82b1\u5b50', '\u4e09\u90ce', '\u6e08'\u3002",
                                        "default": "",
                                        "example": "\u30a2\u30ea\u30b9",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "kana01": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 32,
                                        "title": "\u30bb\u30a4\uff08\u5165\u529b\uff09",
                                        "description": "\u59d3\u306e\u30ab\u30bf\u30ab\u30ca\u8aad\u307f\u3002\u5168\u89d2\u30ab\u30bf\u30ab\u30ca\u306e\u307f\u8a31\u53ef\uff08\u3072\u3089\u304c\u306a\u5165\u529b\u6642\u306f\u81ea\u52d5\u5909\u63db\uff09\u3002\u65e5\u672c\u306e\u6c0f\u540d\u5165\u529b\u306b\u7279\u6709\u306e\u8aad\u307f\u4eee\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 3\u301c3; \u89b3\u5bdf\u5024 '\u30e4\u30de\u30c0', '\u30b5\u30c8\u30a6'; null 18/31\u3002",
                                        "example": "\u30e4\u30de\u30c0",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "kana02": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 32,
                                        "title": "\u30e1\u30a4\uff08\u5165\u529b\uff09",
                                        "description": "\u540d\u306e\u30ab\u30bf\u30ab\u30ca\u8aad\u307f\u3002\u5168\u89d2\u30ab\u30bf\u30ab\u30ca\u306e\u307f\u8a31\u53ef\uff08\u3072\u3089\u304c\u306a\u5165\u529b\u6642\u306f\u81ea\u52d5\u5909\u63db\uff09\u3002\u65e5\u672c\u306e\u6c0f\u540d\u5165\u529b\u306b\u7279\u6709\u306e\u8aad\u307f\u4eee\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 3\u301c3; \u89b3\u5bdf\u5024 '\u30a2\u30ea\u30b9', '\u30cf\u30ca\u30b3', '\u30bf\u30ed\u30a6'; null 18/31\u3002",
                                        "example": "\u30a2\u30ea\u30b9",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "companyName": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 32,
                                        "title": "\u4f1a\u793e\u540d\uff08\u5165\u529b\uff09",
                                        "description": "\u6cd5\u4eba\u9867\u5ba2\u306e\u793e\u540d\u3002B2B\u53d6\u5f15\u3084\u30a4\u30f3\u30dc\u30a4\u30b9\u3067\u4f7f\u7528 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c11; \u89b3\u5bdf\u5024 'Acme Corp.', '\u682a\u5f0f\u4f1a\u793eEC-CUBE'; null 24/32\u3002",
                                        "example": "Acme Corp.",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "postalCode": {
                                        "title": "\u90f5\u4fbf\u756a\u53f7\uff08\u5165\u529b\uff09",
                                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u6709\u7121\u3092\u3069\u3061\u3089\u3082\u53d7\u3051\u5165\u308c\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 7\u301c8; \u89b3\u5bdf\u5024 '1500001', '1000005', '5300001', '530-0001'; null 18/33\u3002",
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "example": "1500001",
                                        "default": "",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "pref": {
                                        "title": "\u90fd\u9053\u5e9c\u770c\uff08\u5165\u529b\uff09",
                                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u90fd\u9053\u5e9c\u770cID\u3002\u4f4f\u6240\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u72b6\u614b\u3067\u306f0\u3001\u78ba\u5b9a\u4f4f\u6240\u3067\u306f1\u301c47\u3092\u4f7f\u3046\u3002 Fake\u89b3\u5bdf\u6570\u5024 13\u301c27; \u89b3\u5bdf\u5024 '13', '27'; null 3/9\u3002",
                                        "type": [
                                            "integer",
                                            "null"
                                        ],
                                        "example": 13,
                                        "default": 0,
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "addr01": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 32,
                                        "title": "\u5e02\u533a\u753a\u6751\uff08\u5165\u529b\uff09",
                                        "description": "\u90fd\u9053\u5e9c\u770c\u3088\u308a\u4e0b\u4f4d\u306e\u5e02\u533a\u753a\u6751\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 3\u301c7; \u89b3\u5bdf\u5024 '\u6e0b\u8c37\u533a', '\u5343\u4ee3\u7530\u533a', '\u5927\u962a\u5e02\u5317\u533a', '\u5927\u962a\u5e02\u5317\u533a\u6885\u7530'; null 18/33\u3002",
                                        "default": "",
                                        "example": "\u6e0b\u8c37\u533a",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "addr02": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 32,
                                        "title": "\u756a\u5730\u30fb\u5efa\u7269\u540d\uff08\u5165\u529b\uff09",
                                        "description": "\u756a\u5730\u30fb\u30d3\u30eb\u540d\u30fb\u90e8\u5c4b\u756a\u53f7\u7b49\u306e\u8a73\u7d30\u4f4f\u6240 Fake\u89b3\u5bdf\u6587\u5b57\u9577 5\u301c8; \u89b3\u5bdf\u5024 '\u795e\u5bae\u524d1-1-1', '\u4e38\u306e\u51852-2-2', '\u6885\u75301-1-1', '1-2-3'; null 18/33\u3002",
                                        "default": "",
                                        "example": "\u795e\u5bae\u524d1-1-1",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "phoneNumber": {
                                        "title": "\u96fb\u8a71\u756a\u53f7\uff08\u5165\u529b\uff09",
                                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u3002Fake corpus\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3060\u304c\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3059\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c10; \u89b3\u5bdf\u5024 '0312345678', '0901234567', '0612345678'; null 18/33\u3002",
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 13,
                                        "example": "0312345678",
                                        "default": "",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    }
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/POST/shopping/shipping-multiple-editResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/admin/block/block": {
            "get": {
                "operationId": "goBlock",
                "summary": "Renders the block edit form.",
                "description": "The JSON contexts (`app`, `prod`, `test`) ignore `body['form']`.",
                "parameters": [
                    {
                        "name": "blockId",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string"
                        },
                        "description": "\u30d6\u30ed\u30c3\u30afID\uff08\u5165\u529b\uff09 - dtb_block.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002SQL \u5b9f\u88c5\u3067\u306f dtb_block.id \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\u3057\u3001Fake \u5b9f\u88c5\u3067\u306f bk-* seed handle \u3092\u4f7f\u7528\u3059\u308b\u3002",
                        "example": "1"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/admin/block/blockResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            },
            "put": {
                "operationId": "doUpdateBlock",
                "summary": "ALPS `doUpdateBlock` \u306b\u5bfe\u5fdc\u3059\u308b PUT \u64cd\u4f5c\u3002",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "blockId": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "title": "\u30d6\u30ed\u30c3\u30afID\uff08\u5165\u529b\uff09",
                                        "description": "dtb_block.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e BlockEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f `bk-` \u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9\u4ed8\u304d\u306e\u82f1\u6570\u5b57\u3092\u751f\u6210\u3057\uff08\u30b7\u30fc\u30c9 `bk-header` \u3092\u542b\u3080\uff09\u3001SQL \u5b9f\u88c5\u306f dtb_block.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u975e\u6570\u5024 ID \u306f SqlBlockStorage \u3067\u306f miss \u3068\u3057\u3066\u6271\u308f\u308c getById / put / remove \u306e\u3044\u305a\u308c\u3082 404 \u7d4c\u8def (BlockUpdated / BlockDeleted) \u3092\u8e0f\u3080\u305f\u3081\u3001\u30b7\u30fc\u30c9\u30cf\u30f3\u30c9\u30eb `bk-header` \u3084 `nonexistent-zzz` \u306f Fake / SQL \u53cc\u65b9\u3067 404 \u304c\u540c\u5f62 Fake\u89b3\u5bdf\u6587\u5b57\u9577 7\u301c9; \u89b3\u5bdf\u5024 'bk-header', 'bk-user'\u3002",
                                        "example": "bk-header",
                                        "minLength": 0,
                                        "maxLength": 128,
                                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002 Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "blockName": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 32,
                                        "title": "\u30d6\u30ed\u30c3\u30af\u540d\uff08\u5165\u529b\uff09",
                                        "description": "\u30d6\u30ed\u30c3\u30af\u306e\u8868\u793a\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 4\u301c8; \u89b3\u5bdf\u5024 '\u30d8\u30c3\u30c0\u30fc', '\u30e6\u30fc\u30b6\u30fc\u30d6\u30ed\u30c3\u30af'\u3002",
                                        "example": "\u30d8\u30c3\u30c0\u30fc",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "blockFileName": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 32,
                                        "title": "\u30d6\u30ed\u30c3\u30af\u30d5\u30a1\u30a4\u30eb\u540d\uff08\u5165\u529b\uff09",
                                        "description": "\u30d6\u30ed\u30c3\u30af\u306e\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u30d5\u30a1\u30a4\u30eb\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 6\u301c10; \u89b3\u5bdf\u5024 'header', 'user_block'\u3002",
                                        "example": "header",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    }
                                },
                                "required": [
                                    "blockId"
                                ]
                            }
                        }
                    },
                    "required": true
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/PUT/admin/block/blockResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            },
            "delete": {
                "operationId": "doDeleteBlock",
                "summary": "ALPS `doDeleteBlock` \u306b\u5bfe\u5fdc\u3059\u308b DELETE \u64cd\u4f5c\u3002",
                "parameters": [
                    {
                        "name": "blockId",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "\u30d6\u30ed\u30c3\u30afID\uff08\u5165\u529b\uff09 - dtb_block.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e BlockEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f `bk-` \u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9\u4ed8\u304d\u306e\u82f1\u6570\u5b57\u3092\u751f\u6210\u3057\uff08\u30b7\u30fc\u30c9 `bk-header` \u3092\u542b\u3080\uff09\u3001SQL \u5b9f\u88c5\u306f dtb_block.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u975e\u6570\u5024 ID \u306f SqlBlockStorage \u3067\u306f miss \u3068\u3057\u3066\u6271\u308f\u308c getById / put / remove \u306e\u3044\u305a\u308c\u3082 404 \u7d4c\u8def (BlockUpdated / BlockDeleted) \u3092\u8e0f\u3080\u305f\u3081\u3001\u30b7\u30fc\u30c9\u30cf\u30f3\u30c9\u30eb `bk-header` \u3084 `nonexistent-zzz` \u306f Fake / SQL \u53cc\u65b9\u3067 404 \u304c\u540c\u5f62 Fake\u89b3\u5bdf\u6587\u5b57\u9577 7\u301c9; \u89b3\u5bdf\u5024 'bk-header', 'bk-user'\u3002",
                        "example": "bk-header"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/DELETE/admin/block/blockResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/admin/block/block-list": {
            "get": {
                "operationId": "goBlockList",
                "summary": "ALPS `goBlockList` \u306b\u5bfe\u5fdc\u3059\u308b GET \u64cd\u4f5c\u3002",
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/admin/block/block-listResponse"
                                }
                            }
                        }
                    }
                }
            },
            "post": {
                "operationId": "doCreateBlock",
                "summary": "ALPS `doCreateBlock` \u306b\u5bfe\u5fdc\u3059\u308b POST \u64cd\u4f5c\u3002",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "blockName": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 32,
                                        "title": "\u30d6\u30ed\u30c3\u30af\u540d\uff08\u5165\u529b\uff09",
                                        "description": "\u30d6\u30ed\u30c3\u30af\u306e\u8868\u793a\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 4\u301c8; \u89b3\u5bdf\u5024 '\u30d8\u30c3\u30c0\u30fc', '\u30e6\u30fc\u30b6\u30fc\u30d6\u30ed\u30c3\u30af'\u3002",
                                        "example": "\u30d8\u30c3\u30c0\u30fc",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "blockFileName": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 32,
                                        "title": "\u30d6\u30ed\u30c3\u30af\u30d5\u30a1\u30a4\u30eb\u540d\uff08\u5165\u529b\uff09",
                                        "description": "\u30d6\u30ed\u30c3\u30af\u306e\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u30d5\u30a1\u30a4\u30eb\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 6\u301c10; \u89b3\u5bdf\u5024 'header', 'user_block'\u3002",
                                        "example": "header",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    }
                                },
                                "required": [
                                    "blockName",
                                    "blockFileName"
                                ]
                            }
                        }
                    },
                    "required": true
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/POST/admin/block/block-listResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/admin/category/category": {
            "get": {
                "operationId": "goCategory",
                "summary": "ALPS `goCategory` \u306b\u5bfe\u5fdc\u3059\u308b GET \u64cd\u4f5c\u3002",
                "parameters": [
                    {
                        "name": "categoryId",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "\u30ab\u30c6\u30b4\u30eaID\uff08\u5165\u529b\uff09 - dtb_category.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e CategoryEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f 32\u6841hex \u3092\u751f\u6210\u3057\u3001SQL \u5b9f\u88c5\u306f dtb_category.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u975e\u6570\u5024 ID \u306f SqlCategoryStorage \u3067\u306f miss \u3068\u3057\u3066\u6271\u308f\u308c getById / put / remove \u306e\u3044\u305a\u308c\u3082 404 \u7d4c\u8def (CategoryUpdated / CategoryDeleted / CategoryCreated \u306e\u89aa\u89e3\u6c7a) \u3092\u8e0f\u3080\u305f\u3081\u3001\u30b7\u30fc\u30c9\u30cf\u30f3\u30c9\u30eb `nonexistent-zzz` \u306f Fake / SQL \u53cc\u65b9\u3067 404 \u304c\u540c\u5f62\u3002parentId\uff08\u81ea\u5df1\u53c2\u7167 FK parent_category_id\uff09\u3082\u540c\u3058\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3067\u8868\u73fe\u3055\u308c\u3001\u975e\u6570\u5024 parentId \u306f SQL \u3067\u306f NULL\uff08\u30eb\u30fc\u30c8\uff09\u306b\u5012\u308c\u308b\u3002blockId / pageId / tagId \u3068\u540c\u3058 Fake\u2194SQL \u4e8c\u91cd\u6027 Fake\u89b3\u5bdf\u6587\u5b57\u9577 8\u301c10; \u89b3\u5bdf\u5024 'cat-food', 'cat-drinks'\u3002",
                        "example": "cat-food"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/admin/category/categoryResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            },
            "put": {
                "operationId": "doUpdateCategory",
                "summary": "ALPS `doUpdateCategory` \u306b\u5bfe\u5fdc\u3059\u308b PUT \u64cd\u4f5c\u3002",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "categoryId": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "title": "\u30ab\u30c6\u30b4\u30eaID\uff08\u5165\u529b\uff09",
                                        "description": "dtb_category.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e CategoryEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f 32\u6841hex \u3092\u751f\u6210\u3057\u3001SQL \u5b9f\u88c5\u306f dtb_category.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u975e\u6570\u5024 ID \u306f SqlCategoryStorage \u3067\u306f miss \u3068\u3057\u3066\u6271\u308f\u308c getById / put / remove \u306e\u3044\u305a\u308c\u3082 404 \u7d4c\u8def (CategoryUpdated / CategoryDeleted / CategoryCreated \u306e\u89aa\u89e3\u6c7a) \u3092\u8e0f\u3080\u305f\u3081\u3001\u30b7\u30fc\u30c9\u30cf\u30f3\u30c9\u30eb `nonexistent-zzz` \u306f Fake / SQL \u53cc\u65b9\u3067 404 \u304c\u540c\u5f62\u3002parentId\uff08\u81ea\u5df1\u53c2\u7167 FK parent_category_id\uff09\u3082\u540c\u3058\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3067\u8868\u73fe\u3055\u308c\u3001\u975e\u6570\u5024 parentId \u306f SQL \u3067\u306f NULL\uff08\u30eb\u30fc\u30c8\uff09\u306b\u5012\u308c\u308b\u3002blockId / pageId / tagId \u3068\u540c\u3058 Fake\u2194SQL \u4e8c\u91cd\u6027 Fake\u89b3\u5bdf\u6587\u5b57\u9577 8\u301c10; \u89b3\u5bdf\u5024 'cat-food', 'cat-drinks'\u3002",
                                        "example": "cat-food",
                                        "minLength": 0,
                                        "maxLength": 128,
                                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002 Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "categoryName": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 32,
                                        "title": "\u30ab\u30c6\u30b4\u30ea\u540d\uff08\u5165\u529b\uff09",
                                        "description": "\u30ab\u30c6\u30b4\u30ea\u306e\u8868\u793a\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 4\u301c6; \u89b3\u5bdf\u5024 'Food', 'Drinks'\u3002",
                                        "example": "Food",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "sortNo": {
                                        "type": [
                                            "integer",
                                            "null"
                                        ],
                                        "title": "\u8868\u793a\u9806\uff08\u5165\u529b\uff09",
                                        "description": "\u4e00\u89a7\u306b\u304a\u3051\u308b\u4e26\u3073\u9806 Fake\u89b3\u5bdf\u6570\u5024 1\u301c20; \u89b3\u5bdf\u5024 '1', '3', '2', '4', '10', '20'\u3002",
                                        "example": 1,
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "parentId": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "title": "\u89aa\u30ab\u30c6\u30b4\u30eaID\uff08\u5165\u529b\uff09",
                                        "description": "/admin/category/category \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u5bfe\u8c61\u3092\u8b58\u5225\u3059\u308b\u89aa\u30ab\u30c6\u30b4\u30eaID\u3002DB\u63a1\u756aID\u3001Fake\u6587\u5b57\u5217ID\u3001\u4e92\u63db\u5883\u754cID\u306e\u3069\u308c\u306b\u8a72\u5f53\u3059\u308b\u304b\u3092schema\u306e\u578b\u3068\u30b3\u30e1\u30f3\u30c8\u3067\u5206\u3051\u308b\u3002",
                                        "minLength": 0,
                                        "maxLength": 128,
                                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002 Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    }
                                },
                                "required": [
                                    "categoryId"
                                ]
                            }
                        }
                    },
                    "required": true
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/PUT/admin/category/categoryResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            },
            "delete": {
                "operationId": "doDeleteCategory",
                "summary": "ALPS `doDeleteCategory` \u306b\u5bfe\u5fdc\u3059\u308b DELETE \u64cd\u4f5c\u3002",
                "parameters": [
                    {
                        "name": "categoryId",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "\u30ab\u30c6\u30b4\u30eaID\uff08\u5165\u529b\uff09 - dtb_category.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e CategoryEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f 32\u6841hex \u3092\u751f\u6210\u3057\u3001SQL \u5b9f\u88c5\u306f dtb_category.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u975e\u6570\u5024 ID \u306f SqlCategoryStorage \u3067\u306f miss \u3068\u3057\u3066\u6271\u308f\u308c getById / put / remove \u306e\u3044\u305a\u308c\u3082 404 \u7d4c\u8def (CategoryUpdated / CategoryDeleted / CategoryCreated \u306e\u89aa\u89e3\u6c7a) \u3092\u8e0f\u3080\u305f\u3081\u3001\u30b7\u30fc\u30c9\u30cf\u30f3\u30c9\u30eb `nonexistent-zzz` \u306f Fake / SQL \u53cc\u65b9\u3067 404 \u304c\u540c\u5f62\u3002parentId\uff08\u81ea\u5df1\u53c2\u7167 FK parent_category_id\uff09\u3082\u540c\u3058\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3067\u8868\u73fe\u3055\u308c\u3001\u975e\u6570\u5024 parentId \u306f SQL \u3067\u306f NULL\uff08\u30eb\u30fc\u30c8\uff09\u306b\u5012\u308c\u308b\u3002blockId / pageId / tagId \u3068\u540c\u3058 Fake\u2194SQL \u4e8c\u91cd\u6027 Fake\u89b3\u5bdf\u6587\u5b57\u9577 8\u301c10; \u89b3\u5bdf\u5024 'cat-food', 'cat-drinks'\u3002",
                        "example": "cat-food"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/DELETE/admin/category/categoryResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/admin/category/category-list": {
            "get": {
                "operationId": "goCategoryList",
                "summary": "ALPS `goCategoryList` \u306b\u5bfe\u5fdc\u3059\u308b GET \u64cd\u4f5c\u3002",
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/admin/category/category-listResponse"
                                }
                            }
                        }
                    }
                }
            },
            "post": {
                "operationId": "doCreateCategory",
                "summary": "ALPS `doCreateCategory` \u306b\u5bfe\u5fdc\u3059\u308b POST \u64cd\u4f5c\u3002",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "categoryName": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 32,
                                        "title": "\u30ab\u30c6\u30b4\u30ea\u540d\uff08\u5165\u529b\uff09",
                                        "description": "\u30ab\u30c6\u30b4\u30ea\u306e\u8868\u793a\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 4\u301c6; \u89b3\u5bdf\u5024 'Food', 'Drinks'\u3002",
                                        "example": "Food",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "sortNo": {
                                        "type": [
                                            "integer",
                                            "null"
                                        ],
                                        "title": "\u8868\u793a\u9806\uff08\u5165\u529b\uff09",
                                        "description": "\u4e00\u89a7\u306b\u304a\u3051\u308b\u4e26\u3073\u9806 Fake\u89b3\u5bdf\u6570\u5024 1\u301c20; \u89b3\u5bdf\u5024 '1', '3', '2', '4', '10', '20'\u3002",
                                        "example": 1,
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "parentId": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "title": "\u89aa\u30ab\u30c6\u30b4\u30eaID\uff08\u5165\u529b\uff09",
                                        "description": "/admin/category/category-list \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u5bfe\u8c61\u3092\u8b58\u5225\u3059\u308b\u89aa\u30ab\u30c6\u30b4\u30eaID\u3002DB\u63a1\u756aID\u3001Fake\u6587\u5b57\u5217ID\u3001\u4e92\u63db\u5883\u754cID\u306e\u3069\u308c\u306b\u8a72\u5f53\u3059\u308b\u304b\u3092schema\u306e\u578b\u3068\u30b3\u30e1\u30f3\u30c8\u3067\u5206\u3051\u308b\u3002",
                                        "minLength": 0,
                                        "maxLength": 128,
                                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002 Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    }
                                },
                                "required": [
                                    "categoryName",
                                    "sortNo"
                                ]
                            }
                        }
                    },
                    "required": true
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/POST/admin/category/category-listResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/admin/category/csv": {
            "get": {
                "operationId": "goExportCategory",
                "summary": "ALPS `goExportCategory` \u306b\u5bfe\u5fdc\u3059\u308b GET \u64cd\u4f5c\u3002",
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/admin/category/csvResponse"
                                }
                            }
                        }
                    }
                }
            },
            "post": {
                "operationId": "doImportCategoryCsv",
                "summary": "ALPS `doImportCategoryCsv` \u306b\u5bfe\u5fdc\u3059\u308b POST \u64cd\u4f5c\u3002",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "csv": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 5000000,
                                        "$comment": "CSV\u5217\u306e\u696d\u52d9\u59a5\u5f53\u6027\u306fCSV\u4e92\u63db\u30b5\u30fc\u30d3\u30b9\u3067\u691c\u67fb\u3059\u308b\u3002\u3053\u3053\u3067\u306fJSON\u5883\u754c\u4e0a\u306e\u6587\u5b57\u5217\u30b5\u30a4\u30ba\u3092\u5951\u7d04\u3059\u308b\u3002 Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation.",
                                        "title": "\u8f38\u9001\u30da\u30a4\u30ed\u30fc\u30c9\uff08\u5165\u529b\uff09",
                                        "description": "CSV\u30a4\u30f3\u30dd\u30fc\u30c8/\u30a8\u30af\u30b9\u30dd\u30fc\u30c8\u672c\u6587\u3002\u5217\u69cb\u9020\u306e\u8a73\u7d30\u306fCSV\u4e92\u63db\u30b5\u30fc\u30d3\u30b9\u5883\u754c\u3067\u691c\u67fb\u3059\u308b\u3002"
                                    }
                                },
                                "required": [
                                    "csv"
                                ]
                            }
                        }
                    },
                    "required": true
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/POST/admin/category/csvResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/admin/category/edit": {
            "get": {
                "operationId": "goCategory",
                "summary": "ALPS `goCategory` \u306b\u5bfe\u5fdc\u3059\u308b GET \u64cd\u4f5c\u3002",
                "parameters": [
                    {
                        "name": "categoryId",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string"
                        },
                        "description": "\u30ab\u30c6\u30b4\u30eaID\uff08\u5165\u529b\uff09 - dtb_category.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e CategoryEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f 32\u6841hex \u3092\u751f\u6210\u3057\u3001SQL \u5b9f\u88c5\u306f dtb_category.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u975e\u6570\u5024 ID \u306f SqlCategoryStorage \u3067\u306f miss \u3068\u3057\u3066\u6271\u308f\u308c getById / put / remove \u306e\u3044\u305a\u308c\u3082 404 \u7d4c\u8def (CategoryUpdated / CategoryDeleted / CategoryCreated \u306e\u89aa\u89e3\u6c7a) \u3092\u8e0f\u3080\u305f\u3081\u3001\u30b7\u30fc\u30c9\u30cf\u30f3\u30c9\u30eb `nonexistent-zzz` \u306f Fake / SQL \u53cc\u65b9\u3067 404 \u304c\u540c\u5f62\u3002parentId\uff08\u81ea\u5df1\u53c2\u7167 FK parent_category_id\uff09\u3082\u540c\u3058\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3067\u8868\u73fe\u3055\u308c\u3001\u975e\u6570\u5024 parentId \u306f SQL \u3067\u306f NULL\uff08\u30eb\u30fc\u30c8\uff09\u306b\u5012\u308c\u308b\u3002blockId / pageId / tagId \u3068\u540c\u3058 Fake\u2194SQL \u4e8c\u91cd\u6027 Fake\u89b3\u5bdf\u6587\u5b57\u9577 8\u301c10; \u89b3\u5bdf\u5024 'cat-food', 'cat-drinks'\u3002",
                        "example": "cat-food"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/admin/category/editResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/admin/class-category/class-category": {
            "put": {
                "operationId": "doUpdateClassCategory",
                "summary": "ALPS `doUpdateClassCategory` \u306b\u5bfe\u5fdc\u3059\u308b PUT \u64cd\u4f5c\u3002",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "classCategoryId": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "title": "\u898f\u683c\u5206\u985eID\uff08\u5165\u529b\uff09",
                                        "description": "dtb_class_category.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e ClassCategoryEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f 32\u6841hex \u3092\u751f\u6210\u3057\u3001SQL \u5b9f\u88c5\u306f dtb_class_category.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u975e\u6570\u5024 ID \u306f SqlClassCategoryStorage \u3067\u306f miss \u3068\u3057\u3066\u6271\u308f\u308c getById / put / remove \u306e\u3044\u305a\u308c\u3082 404 \u7d4c\u8def\uff08\u898f\u683c\u5206\u985e\u306e\u66f4\u65b0\u30fb\u524a\u9664 Final\uff09\u3092\u8e0f\u3080\u305f\u3081\u3001\u30b7\u30fc\u30c9\u30cf\u30f3\u30c9\u30eb `nonexistent-zzz` \u306f Fake / SQL \u53cc\u65b9\u3067 404 \u304c\u540c\u5f62\u3002classNameId / categoryId / blockId / tagId \u3068\u540c\u3058 Fake\u2194SQL \u4e8c\u91cd\u6027 Fake\u89b3\u5bdf\u6587\u5b57\u9577 6\u301c8; \u89b3\u5bdf\u5024 'cc-red', 'cc-blue', 'cc-small'\u3002",
                                        "example": "cc-red",
                                        "minLength": 0,
                                        "maxLength": 128,
                                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002 Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "classCategoryName": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 255,
                                        "title": "\u898f\u683c\u5206\u985e\u540d\uff08\u5165\u529b\uff09",
                                        "description": "\u5546\u54c1\u30d0\u30ea\u30a8\u30fc\u30b7\u30e7\u30f3\u8ef8\u306e\u5177\u4f53\u7684\u306a\u5024\uff08\u4f8b: \u8d64\u3001L\u30b5\u30a4\u30ba\uff09\u3002EC-CUBE\u306e\"classCategory\"\u306fOOP\u306e\u30ab\u30c6\u30b4\u30ea\u3067\u306f\u306a\u304f\u898f\u683c\u5024\u3092\u610f\u5473\u3059\u308b",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    }
                                },
                                "required": [
                                    "classCategoryId"
                                ]
                            }
                        }
                    },
                    "required": true
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/PUT/admin/class-category/class-categoryResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            },
            "delete": {
                "operationId": "doDeleteClassCategory",
                "summary": "ALPS `doDeleteClassCategory` \u306b\u5bfe\u5fdc\u3059\u308b DELETE \u64cd\u4f5c\u3002",
                "parameters": [
                    {
                        "name": "classCategoryId",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "\u898f\u683c\u5206\u985eID\uff08\u5165\u529b\uff09 - dtb_class_category.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e ClassCategoryEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f 32\u6841hex \u3092\u751f\u6210\u3057\u3001SQL \u5b9f\u88c5\u306f dtb_class_category.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u975e\u6570\u5024 ID \u306f SqlClassCategoryStorage \u3067\u306f miss \u3068\u3057\u3066\u6271\u308f\u308c getById / put / remove \u306e\u3044\u305a\u308c\u3082 404 \u7d4c\u8def\uff08\u898f\u683c\u5206\u985e\u306e\u66f4\u65b0\u30fb\u524a\u9664 Final\uff09\u3092\u8e0f\u3080\u305f\u3081\u3001\u30b7\u30fc\u30c9\u30cf\u30f3\u30c9\u30eb `nonexistent-zzz` \u306f Fake / SQL \u53cc\u65b9\u3067 404 \u304c\u540c\u5f62\u3002classNameId / categoryId / blockId / tagId \u3068\u540c\u3058 Fake\u2194SQL \u4e8c\u91cd\u6027 Fake\u89b3\u5bdf\u6587\u5b57\u9577 6\u301c8; \u89b3\u5bdf\u5024 'cc-red', 'cc-blue', 'cc-small'\u3002",
                        "example": "cc-red"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/DELETE/admin/class-category/class-categoryResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/admin/class-category/class-category-export": {
            "get": {
                "operationId": "goExportClassCategory",
                "summary": "ALPS `goExportClassCategory` \u306b\u5bfe\u5fdc\u3059\u308b GET \u64cd\u4f5c\u3002",
                "parameters": [
                    {
                        "name": "classNameId",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string"
                        },
                        "description": "\u898f\u683c\u540dID\uff08\u5165\u529b\uff09 - dtb_class_name.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e ClassNameEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f 32\u6841hex \u3092\u751f\u6210\u3057\u3001SQL \u5b9f\u88c5\u306f dtb_class_name.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u975e\u6570\u5024 ID \u306f SqlClassNameStorage \u3067\u306f miss \u3068\u3057\u3066\u6271\u308f\u308c getById / put / remove \u306e\u3044\u305a\u308c\u3082 404 \u7d4c\u8def\uff08\u898f\u683c\u540d\u306e\u66f4\u65b0\u30fb\u524a\u9664 Final\uff09\u3092\u8e0f\u3080\u305f\u3081\u3001\u30b7\u30fc\u30c9\u30cf\u30f3\u30c9\u30eb `nonexistent-zzz` \u306f Fake / SQL \u53cc\u65b9\u3067 404 \u304c\u540c\u5f62\u3002categoryId / blockId / tagId \u3068\u540c\u3058 Fake\u2194SQL \u4e8c\u91cd\u6027 Fake\u89b3\u5bdf\u6587\u5b57\u9577 7\u301c8; \u89b3\u5bdf\u5024 'cn-color', 'cn-size'\u3002",
                        "example": "cn-color"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/admin/class-category/class-category-exportResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/admin/class-category/class-category-list": {
            "get": {
                "operationId": "goClassCategoryList",
                "summary": "ALPS `goClassCategoryList` \u306b\u5bfe\u5fdc\u3059\u308b GET \u64cd\u4f5c\u3002",
                "parameters": [
                    {
                        "name": "classNameId",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string"
                        },
                        "description": "\u898f\u683c\u540dID\uff08\u5165\u529b\uff09 - dtb_class_name.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e ClassNameEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f 32\u6841hex \u3092\u751f\u6210\u3057\u3001SQL \u5b9f\u88c5\u306f dtb_class_name.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u975e\u6570\u5024 ID \u306f SqlClassNameStorage \u3067\u306f miss \u3068\u3057\u3066\u6271\u308f\u308c getById / put / remove \u306e\u3044\u305a\u308c\u3082 404 \u7d4c\u8def\uff08\u898f\u683c\u540d\u306e\u66f4\u65b0\u30fb\u524a\u9664 Final\uff09\u3092\u8e0f\u3080\u305f\u3081\u3001\u30b7\u30fc\u30c9\u30cf\u30f3\u30c9\u30eb `nonexistent-zzz` \u306f Fake / SQL \u53cc\u65b9\u3067 404 \u304c\u540c\u5f62\u3002categoryId / blockId / tagId \u3068\u540c\u3058 Fake\u2194SQL \u4e8c\u91cd\u6027 Fake\u89b3\u5bdf\u6587\u5b57\u9577 7\u301c8; \u89b3\u5bdf\u5024 'cn-color', 'cn-size'\u3002",
                        "example": "cn-color"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/admin/class-category/class-category-listResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            },
            "post": {
                "operationId": "doCreateClassCategory",
                "summary": "ALPS `doCreateClassCategory` \u306b\u5bfe\u5fdc\u3059\u308b POST \u64cd\u4f5c\u3002",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "classNameId": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "title": "\u898f\u683c\u540dID\uff08\u5165\u529b\uff09",
                                        "description": "dtb_class_name.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e ClassNameEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f 32\u6841hex \u3092\u751f\u6210\u3057\u3001SQL \u5b9f\u88c5\u306f dtb_class_name.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u975e\u6570\u5024 ID \u306f SqlClassNameStorage \u3067\u306f miss \u3068\u3057\u3066\u6271\u308f\u308c getById / put / remove \u306e\u3044\u305a\u308c\u3082 404 \u7d4c\u8def\uff08\u898f\u683c\u540d\u306e\u66f4\u65b0\u30fb\u524a\u9664 Final\uff09\u3092\u8e0f\u3080\u305f\u3081\u3001\u30b7\u30fc\u30c9\u30cf\u30f3\u30c9\u30eb `nonexistent-zzz` \u306f Fake / SQL \u53cc\u65b9\u3067 404 \u304c\u540c\u5f62\u3002categoryId / blockId / tagId \u3068\u540c\u3058 Fake\u2194SQL \u4e8c\u91cd\u6027 Fake\u89b3\u5bdf\u6587\u5b57\u9577 7\u301c8; \u89b3\u5bdf\u5024 'cn-color', 'cn-size'\u3002",
                                        "example": "cn-color",
                                        "minLength": 0,
                                        "maxLength": 128,
                                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002 Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "classCategoryName": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 255,
                                        "title": "\u898f\u683c\u5206\u985e\u540d\uff08\u5165\u529b\uff09",
                                        "description": "\u5546\u54c1\u30d0\u30ea\u30a8\u30fc\u30b7\u30e7\u30f3\u8ef8\u306e\u5177\u4f53\u7684\u306a\u5024\uff08\u4f8b: \u8d64\u3001L\u30b5\u30a4\u30ba\uff09\u3002EC-CUBE\u306e\"classCategory\"\u306fOOP\u306e\u30ab\u30c6\u30b4\u30ea\u3067\u306f\u306a\u304f\u898f\u683c\u5024\u3092\u610f\u5473\u3059\u308b",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    }
                                },
                                "required": [
                                    "classNameId",
                                    "classCategoryName"
                                ]
                            }
                        }
                    },
                    "required": true
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/POST/admin/class-category/class-category-listResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/admin/class-name/class-name": {
            "put": {
                "operationId": "doUpdateClassName",
                "summary": "ALPS `doUpdateClassName` \u306b\u5bfe\u5fdc\u3059\u308b PUT \u64cd\u4f5c\u3002",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "classNameId": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "title": "\u898f\u683c\u540dID\uff08\u5165\u529b\uff09",
                                        "description": "dtb_class_name.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e ClassNameEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f 32\u6841hex \u3092\u751f\u6210\u3057\u3001SQL \u5b9f\u88c5\u306f dtb_class_name.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u975e\u6570\u5024 ID \u306f SqlClassNameStorage \u3067\u306f miss \u3068\u3057\u3066\u6271\u308f\u308c getById / put / remove \u306e\u3044\u305a\u308c\u3082 404 \u7d4c\u8def\uff08\u898f\u683c\u540d\u306e\u66f4\u65b0\u30fb\u524a\u9664 Final\uff09\u3092\u8e0f\u3080\u305f\u3081\u3001\u30b7\u30fc\u30c9\u30cf\u30f3\u30c9\u30eb `nonexistent-zzz` \u306f Fake / SQL \u53cc\u65b9\u3067 404 \u304c\u540c\u5f62\u3002categoryId / blockId / tagId \u3068\u540c\u3058 Fake\u2194SQL \u4e8c\u91cd\u6027 Fake\u89b3\u5bdf\u6587\u5b57\u9577 7\u301c8; \u89b3\u5bdf\u5024 'cn-color', 'cn-size'\u3002",
                                        "example": "cn-color",
                                        "minLength": 0,
                                        "maxLength": 128,
                                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002 Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "classNameLabel": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 255,
                                        "title": "\u898f\u683c\u540d\uff08\u5165\u529b\uff09",
                                        "description": "\u5546\u54c1\u30d0\u30ea\u30a8\u30fc\u30b7\u30e7\u30f3\u8ef8\u306e\u540d\u524d\uff08\u4f8b: \u30ab\u30e9\u30fc\u3001\u30b5\u30a4\u30ba\uff09\u3002EC-CUBE\u306e\"class\"\u306fOOP\u306e\u30af\u30e9\u30b9\u3067\u306f\u306a\u304f\u5546\u54c1\u898f\u683c\u3092\u610f\u5473\u3059\u308b",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    }
                                },
                                "required": [
                                    "classNameId"
                                ]
                            }
                        }
                    },
                    "required": true
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/PUT/admin/class-name/class-nameResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            },
            "delete": {
                "operationId": "doDeleteClassName",
                "summary": "ALPS `doDeleteClassName` \u306b\u5bfe\u5fdc\u3059\u308b DELETE \u64cd\u4f5c\u3002",
                "parameters": [
                    {
                        "name": "classNameId",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "\u898f\u683c\u540dID\uff08\u5165\u529b\uff09 - dtb_class_name.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e ClassNameEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f 32\u6841hex \u3092\u751f\u6210\u3057\u3001SQL \u5b9f\u88c5\u306f dtb_class_name.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u975e\u6570\u5024 ID \u306f SqlClassNameStorage \u3067\u306f miss \u3068\u3057\u3066\u6271\u308f\u308c getById / put / remove \u306e\u3044\u305a\u308c\u3082 404 \u7d4c\u8def\uff08\u898f\u683c\u540d\u306e\u66f4\u65b0\u30fb\u524a\u9664 Final\uff09\u3092\u8e0f\u3080\u305f\u3081\u3001\u30b7\u30fc\u30c9\u30cf\u30f3\u30c9\u30eb `nonexistent-zzz` \u306f Fake / SQL \u53cc\u65b9\u3067 404 \u304c\u540c\u5f62\u3002categoryId / blockId / tagId \u3068\u540c\u3058 Fake\u2194SQL \u4e8c\u91cd\u6027 Fake\u89b3\u5bdf\u6587\u5b57\u9577 7\u301c8; \u89b3\u5bdf\u5024 'cn-color', 'cn-size'\u3002",
                        "example": "cn-color"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/DELETE/admin/class-name/class-nameResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/admin/class-name/class-name-export": {
            "get": {
                "operationId": "goExportClassName",
                "summary": "ALPS `goExportClassName` \u306b\u5bfe\u5fdc\u3059\u308b GET \u64cd\u4f5c\u3002",
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/admin/class-name/class-name-exportResponse"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/admin/class-name/class-name-list": {
            "get": {
                "operationId": "goClassNameList",
                "summary": "ALPS `goClassNameList` \u306b\u5bfe\u5fdc\u3059\u308b GET \u64cd\u4f5c\u3002",
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/admin/class-name/class-name-listResponse"
                                }
                            }
                        }
                    }
                }
            },
            "post": {
                "operationId": "doCreateClassName",
                "summary": "ALPS `doCreateClassName` \u306b\u5bfe\u5fdc\u3059\u308b POST \u64cd\u4f5c\u3002",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "classNameLabel": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 255,
                                        "title": "\u898f\u683c\u540d\uff08\u5165\u529b\uff09",
                                        "description": "\u5546\u54c1\u30d0\u30ea\u30a8\u30fc\u30b7\u30e7\u30f3\u8ef8\u306e\u540d\u524d\uff08\u4f8b: \u30ab\u30e9\u30fc\u3001\u30b5\u30a4\u30ba\uff09\u3002EC-CUBE\u306e\"class\"\u306fOOP\u306e\u30af\u30e9\u30b9\u3067\u306f\u306a\u304f\u5546\u54c1\u898f\u683c\u3092\u610f\u5473\u3059\u308b",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    }
                                },
                                "required": [
                                    "classNameLabel"
                                ]
                            }
                        }
                    },
                    "required": true
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/POST/admin/class-name/class-name-listResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/admin/content/cache": {
            "get": {
                "operationId": "doClearCache",
                "summary": "ALPS `doClearCache` \u306b\u5bfe\u5fdc\u3059\u308b GET \u64cd\u4f5c\u3002",
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/admin/content/cacheResponse"
                                }
                            }
                        }
                    }
                }
            },
            "put": {
                "operationId": "doClearCache",
                "summary": "Clears the application cache (doClearCache).",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "mode": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 32,
                                        "title": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u30e2\u30fc\u30c9",
                                        "$comment": "HTML form submit marker; Resource workflow calls omit it.",
                                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u30e2\u30fc\u30c9"
                                    }
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/PUT/admin/content/cacheResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/admin/content/css": {
            "get": {
                "operationId": "goContentCss",
                "summary": "ALPS `goContentCss` \u306b\u5bfe\u5fdc\u3059\u308b GET \u64cd\u4f5c\u3002",
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/admin/content/cssResponse"
                                }
                            }
                        }
                    }
                }
            },
            "put": {
                "operationId": "doUpdateContentCss",
                "summary": "Saves the customize CSS (doUpdateContentCss). ALPS idempotent \u2192 PUT.",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "css": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 1000000,
                                        "title": "\u51e6\u7406\u4e00\u89a7\uff08\u5165\u529b\uff09",
                                        "description": "/admin/content/css \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u904b\u3076\u51e6\u7406\u4e00\u89a7\u3002CSV/PDF/\u30ed\u30b0\u7b49\u306e\u5185\u90e8\u5f62\u5f0f\u306f\u5c02\u7528\u5883\u754c\u3067\u6271\u3044\u3001JSON Schema\u3067\u306f\u8f38\u9001\u4e0a\u306e\u578b\u3068\u30b5\u30a4\u30ba\u3092\u5951\u7d04\u3059\u308b\u3002",
                                        "default": "",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "mode": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 32,
                                        "title": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u30e2\u30fc\u30c9",
                                        "$comment": "HTML form submit marker; Resource workflow calls omit it.",
                                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u30e2\u30fc\u30c9"
                                    }
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/PUT/admin/content/cssResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/admin/content/file-manager": {
            "get": {
                "operationId": "goAdminContentFileManager",
                "summary": "ALPS `goAdminContentFileManager` \u306b\u5bfe\u5fdc\u3059\u308b GET \u64cd\u4f5c\u3002",
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/admin/content/file-managerResponse"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/admin/content/js": {
            "get": {
                "operationId": "goContentJs",
                "summary": "ALPS `goContentJs` \u306b\u5bfe\u5fdc\u3059\u308b GET \u64cd\u4f5c\u3002",
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/admin/content/jsResponse"
                                }
                            }
                        }
                    }
                }
            },
            "put": {
                "operationId": "doUpdateContentJs",
                "summary": "Saves the customize JS (doUpdateContentJs). ALPS idempotent \u2192 PUT.",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "js": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 1000000,
                                        "title": "\u51e6\u7406\u4e00\u89a7\uff08\u5165\u529b\uff09",
                                        "description": "/admin/content/js \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u904b\u3076\u51e6\u7406\u4e00\u89a7\u3002CSV/PDF/\u30ed\u30b0\u7b49\u306e\u5185\u90e8\u5f62\u5f0f\u306f\u5c02\u7528\u5883\u754c\u3067\u6271\u3044\u3001JSON Schema\u3067\u306f\u8f38\u9001\u4e0a\u306e\u578b\u3068\u30b5\u30a4\u30ba\u3092\u5951\u7d04\u3059\u308b\u3002",
                                        "default": "",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "mode": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 32,
                                        "title": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u30e2\u30fc\u30c9",
                                        "$comment": "HTML form submit marker; Resource workflow calls omit it.",
                                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u30e2\u30fc\u30c9"
                                    }
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/PUT/admin/content/jsResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/admin/content/maintenance": {
            "get": {
                "operationId": "goMaintenance",
                "summary": "ALPS `goMaintenance` \u306b\u5bfe\u5fdc\u3059\u308b GET \u64cd\u4f5c\u3002",
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/admin/content/maintenanceResponse"
                                }
                            }
                        }
                    }
                }
            },
            "put": {
                "operationId": "doToggleMaintenance",
                "summary": "Toggles maintenance mode to an explicit state (doToggleMaintenance).",
                "description": "ALPS marks it `idempotent` \u2192 PUT.",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "enabled": {
                                        "type": [
                                            "boolean",
                                            "null"
                                        ],
                                        "title": "\u51e6\u7406\u72b6\u614b\u30d5\u30e9\u30b0\uff08\u5165\u529b\uff09",
                                        "description": "\u89b3\u5bdf\u5024 'true', 'false'\u3002",
                                        "example": "true",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "mode": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 32,
                                        "title": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u30e2\u30fc\u30c9",
                                        "$comment": "HTML form submit marker; Resource workflow calls omit it.",
                                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u30e2\u30fc\u30c9"
                                    }
                                },
                                "required": [
                                    "enabled"
                                ]
                            }
                        }
                    },
                    "required": true
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/PUT/admin/content/maintenanceResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/admin/customer/resend-activation-mail": {
            "post": {
                "operationId": "doResendActivationMail",
                "summary": "ALPS `doResendActivationMail` \u306b\u5bfe\u5fdc\u3059\u308b POST \u64cd\u4f5c\u3002",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "email": {
                                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\uff08\u5165\u529b\uff09",
                                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u3002\u4f1a\u54e1\u767b\u9332\u30fb\u30ed\u30b0\u30a4\u30f3\u30fb\u901a\u77e5\u3067\u5171\u901a\u306b\u4f7f\u3046\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 15\u301c58; \u89b3\u5bdf\u5024 'bob@example.com', 'login-test@example.com', 'alice@example.com', 'carol@example.com', 'provisional@example.com', 'withdrawn-30000000aaaa3333bbbb4444cccc5555@example.invalid'\u3002",
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 254,
                                        "example": "alice@example.com",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    }
                                },
                                "required": [
                                    "email"
                                ]
                            }
                        }
                    },
                    "required": true
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/POST/admin/customer/resend-activation-mailResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/admin/delivery/delivery": {
            "get": {
                "operationId": "doUpdateDelivery",
                "summary": "EC-CUBE \u914d\u9001\u65b9\u6cd5\u8a2d\u5b9a\uff08\u7de8\u96c6\uff09 \u2014 Setting/Shop Tier-2.",
                "description": "Thin GET renderer for `Setting/Shop/delivery_edit.twig`. An empty\n`$deliveryId` renders a blank \"new delivery\" form; a known id\npre-fills the editor; an unknown id is 404. The delivery-master\nlist doubles as the AUTHZ gate \u2014 no admin session \u2192 403.",
                "parameters": [
                    {
                        "name": "deliveryId",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string"
                        },
                        "description": "\u914d\u9001\u65b9\u6cd5ID\uff08\u5165\u529b\uff09 - dtb_delivery.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e DeliveryEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f 32\u6841hex \u3092\u751f\u6210\u3057\u3001SQL \u5b9f\u88c5\u306f dtb_delivery.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u975e\u6570\u5024 ID \u306f SqlDeliveryStorage \u3067\u306f miss \u3068\u3057\u3066\u6271\u308f\u308c getById / put / remove \u306e\u3044\u305a\u308c\u3082 404 \u7d4c\u8def (DeliveryUpdated / DeliveryDeleted) \u3092\u8e0f\u3080\u305f\u3081\u3001\u30b7\u30fc\u30c9\u30cf\u30f3\u30c9\u30eb `nonexistent-zzz` \u306f Fake / SQL \u53cc\u65b9\u3067 404 \u304c\u540c\u5f62\u3002blockId / pageId / categoryId \u3068\u540c\u3058 Fake\u2194SQL \u4e8c\u91cd\u6027 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c10; \u89b3\u5bdf\u5024 'del-yamato', 'del-yupack'\u3002",
                        "example": "del-yamato"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/admin/delivery/deliveryResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            },
            "put": {
                "operationId": "doUpdateDelivery",
                "summary": "ALPS `doUpdateDelivery` \u306b\u5bfe\u5fdc\u3059\u308b PUT \u64cd\u4f5c\u3002",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "deliveryId": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "title": "\u914d\u9001\u65b9\u6cd5ID\uff08\u5165\u529b\uff09",
                                        "description": "dtb_delivery.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e DeliveryEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f 32\u6841hex \u3092\u751f\u6210\u3057\u3001SQL \u5b9f\u88c5\u306f dtb_delivery.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u975e\u6570\u5024 ID \u306f SqlDeliveryStorage \u3067\u306f miss \u3068\u3057\u3066\u6271\u308f\u308c getById / put / remove \u306e\u3044\u305a\u308c\u3082 404 \u7d4c\u8def (DeliveryUpdated / DeliveryDeleted) \u3092\u8e0f\u3080\u305f\u3081\u3001\u30b7\u30fc\u30c9\u30cf\u30f3\u30c9\u30eb `nonexistent-zzz` \u306f Fake / SQL \u53cc\u65b9\u3067 404 \u304c\u540c\u5f62\u3002blockId / pageId / categoryId \u3068\u540c\u3058 Fake\u2194SQL \u4e8c\u91cd\u6027 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c10; \u89b3\u5bdf\u5024 'del-yamato', 'del-yupack'\u3002",
                                        "example": "del-yamato",
                                        "minLength": 0,
                                        "maxLength": 128,
                                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002 Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "deliveryName": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 255,
                                        "title": "\u914d\u9001\u65b9\u6cd5\u540d",
                                        "description": "\u7ba1\u7406\u753b\u9762\u3067\u767b\u9332\u30fb\u66f4\u65b0\u3059\u308b\u914d\u9001\u65b9\u6cd5\u306e\u8868\u793a\u540d\u3002\u5b9f\u904b\u7528\u3067\u306f\u5e97\u8217\u72ec\u81ea\u306e\u9577\u3044\u540d\u79f0\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                                        "example": "\u30e4\u30de\u30c8\u5b85\u6025\u4fbf",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "visible": {
                                        "type": [
                                            "boolean",
                                            "null"
                                        ],
                                        "title": "\u51e6\u7406\u72b6\u614b\u30d5\u30e9\u30b0\uff08\u5165\u529b\uff09",
                                        "description": "\u89b3\u5bdf\u5024 'true'\u3002",
                                        "example": "true",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    }
                                },
                                "required": [
                                    "deliveryId"
                                ]
                            }
                        }
                    },
                    "required": true
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/PUT/admin/delivery/deliveryResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            },
            "delete": {
                "operationId": "doDeleteDelivery",
                "summary": "ALPS `doDeleteDelivery` \u306b\u5bfe\u5fdc\u3059\u308b DELETE \u64cd\u4f5c\u3002",
                "parameters": [
                    {
                        "name": "deliveryId",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "\u914d\u9001\u65b9\u6cd5ID\uff08\u5165\u529b\uff09 - dtb_delivery.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e DeliveryEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f 32\u6841hex \u3092\u751f\u6210\u3057\u3001SQL \u5b9f\u88c5\u306f dtb_delivery.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u975e\u6570\u5024 ID \u306f SqlDeliveryStorage \u3067\u306f miss \u3068\u3057\u3066\u6271\u308f\u308c getById / put / remove \u306e\u3044\u305a\u308c\u3082 404 \u7d4c\u8def (DeliveryUpdated / DeliveryDeleted) \u3092\u8e0f\u3080\u305f\u3081\u3001\u30b7\u30fc\u30c9\u30cf\u30f3\u30c9\u30eb `nonexistent-zzz` \u306f Fake / SQL \u53cc\u65b9\u3067 404 \u304c\u540c\u5f62\u3002blockId / pageId / categoryId \u3068\u540c\u3058 Fake\u2194SQL \u4e8c\u91cd\u6027 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c10; \u89b3\u5bdf\u5024 'del-yamato', 'del-yupack'\u3002",
                        "example": "del-yamato"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/DELETE/admin/delivery/deliveryResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/admin/delivery/delivery-list": {
            "get": {
                "operationId": "goDeliveryList",
                "summary": "ALPS `goDeliveryList` \u306b\u5bfe\u5fdc\u3059\u308b GET \u64cd\u4f5c\u3002",
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/admin/delivery/delivery-listResponse"
                                }
                            }
                        }
                    }
                }
            },
            "post": {
                "operationId": "doCreateDelivery",
                "summary": "ALPS `doCreateDelivery` \u306b\u5bfe\u5fdc\u3059\u308b POST \u64cd\u4f5c\u3002",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "deliveryName": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 255,
                                        "title": "\u914d\u9001\u65b9\u6cd5\u540d",
                                        "description": "\u7ba1\u7406\u753b\u9762\u3067\u767b\u9332\u30fb\u66f4\u65b0\u3059\u308b\u914d\u9001\u65b9\u6cd5\u306e\u8868\u793a\u540d\u3002\u5b9f\u904b\u7528\u3067\u306f\u5e97\u8217\u72ec\u81ea\u306e\u9577\u3044\u540d\u79f0\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                                        "example": "\u30e4\u30de\u30c8\u5b85\u6025\u4fbf",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "visible": {
                                        "type": [
                                            "boolean",
                                            "null"
                                        ],
                                        "title": "\u51e6\u7406\u72b6\u614b\u30d5\u30e9\u30b0\uff08\u5165\u529b\uff09",
                                        "description": "\u89b3\u5bdf\u5024 'true'\u3002",
                                        "default": true,
                                        "example": "true",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    }
                                },
                                "required": [
                                    "deliveryName"
                                ]
                            }
                        }
                    },
                    "required": true
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/POST/admin/delivery/delivery-listResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/admin/layout/layout": {
            "get": {
                "operationId": "goLayout",
                "summary": "Renders the layout editor form (new-layout case).",
                "description": "The JSON contexts (`app`, `prod`, `test`) ignore `body['form']`.",
                "parameters": [
                    {
                        "name": "layoutId",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string"
                        },
                        "description": "\u30ec\u30a4\u30a2\u30a6\u30c8ID\uff08\u5165\u529b\uff09 - dtb_layout.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002SQL \u5b9f\u88c5\u3067\u306f dtb_layout.id \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\u3057\u3001Fake \u5b9f\u88c5\u3067\u306f seed handle \u3092\u4f7f\u7528\u3059\u308b\u3002",
                        "example": "1"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/admin/layout/layoutResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            },
            "put": {
                "operationId": "doUpdateLayout",
                "summary": "ALPS `doUpdateLayout` \u306b\u5bfe\u5fdc\u3059\u308b PUT \u64cd\u4f5c\u3002",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "layoutId": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "title": "\u30ec\u30a4\u30a2\u30a6\u30c8ID\uff08\u5165\u529b\uff09",
                                        "description": "CMS\u30ec\u30a4\u30a2\u30a6\u30c8\u3092\u8b58\u5225\u3059\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002seed \u6e08\u307f\u30ec\u30a4\u30a2\u30a6\u30c8\u3092 Fake/SQL \u540c\u578b\u306b\u6271\u3046\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 13\u301c13; \u89b3\u5bdf\u5024 'lo-pc-default', 'lo-sp-default'\u3002",
                                        "example": "lo-pc-default",
                                        "minLength": 0,
                                        "maxLength": 128,
                                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002 Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "layoutName": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 32,
                                        "title": "\u30ec\u30a4\u30a2\u30a6\u30c8\u540d\uff08\u5165\u529b\uff09",
                                        "description": "\u30ec\u30a4\u30a2\u30a6\u30c8\u306e\u8868\u793a\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 4\u301c5; \u89b3\u5bdf\u5024 'PC\u6a19\u6e96', '\u30b9\u30de\u30db\u6a19\u6e96'\u3002",
                                        "example": "PC\u6a19\u6e96",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "name": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 255,
                                        "title": "\u30ec\u30a4\u30a2\u30a6\u30c8\u540d\uff08HTML\u30d5\u30a9\u30fc\u30e0\u5165\u529b\uff09",
                                        "description": "EC-CUBE\u7531\u6765\u306e HTML form field name\u3002Resource \u3067\u306f layoutName \u3068\u540c\u3058\u610f\u5473\u3068\u3057\u3066\u6271\u3046\u3002",
                                        "example": "PC\u6a19\u6e96",
                                        "$comment": "HTML form compatibility field. API clients should prefer layoutName."
                                    }
                                },
                                "required": [
                                    "layoutId"
                                ]
                            }
                        }
                    },
                    "required": true
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/PUT/admin/layout/layoutResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/admin/layout/layout-list": {
            "get": {
                "operationId": "goLayoutList",
                "summary": "ALPS `goLayoutList` \u306b\u5bfe\u5fdc\u3059\u308b GET \u64cd\u4f5c\u3002",
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/admin/layout/layout-listResponse"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/admin/mail-template/create": {
            "post": {
                "operationId": "doCreateMailTemplate",
                "summary": "Creates an admin mail template database row for workflow verification.",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "mailTemplateName": {
                                        "type": "string",
                                        "minLength": 1,
                                        "maxLength": 255,
                                        "description": "Admin-visible mail template name."
                                    },
                                    "fileName": {
                                        "type": "string",
                                        "minLength": 1,
                                        "maxLength": 255,
                                        "description": "Twig template file path stored in dtb_mail_template.file_name."
                                    },
                                    "mailSubject": {
                                        "type": "string",
                                        "minLength": 1,
                                        "maxLength": 255,
                                        "description": "Mail subject stored with the template row."
                                    }
                                },
                                "required": [
                                    "mailTemplateName",
                                    "fileName",
                                    "mailSubject"
                                ]
                            }
                        }
                    },
                    "required": true
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/POST/admin/mail-template/createResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/admin/news/news": {
            "get": {
                "operationId": "goNews",
                "summary": "ALPS `goNews` \u306b\u5bfe\u5fdc\u3059\u308b GET \u64cd\u4f5c\u3002",
                "parameters": [
                    {
                        "name": "newsId",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string"
                        },
                        "description": "\u30cb\u30e5\u30fc\u30b9ID\uff08\u5165\u529b\uff09 - dtb_news.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e NewsEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f `nw-` \u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9\u4ed8\u304d\u306e\u82f1\u6570\u5b57\u3092\u751f\u6210\u3057\uff08\u30b7\u30fc\u30c9 `nw-welcome` \u3092\u542b\u3080\uff09\u3001SQL \u5b9f\u88c5\u306f dtb_news.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u975e\u6570\u5024 ID \u306f SqlNewsStorage \u3067\u306f miss \u3068\u3057\u3066\u6271\u308f\u308c getById / put / remove \u306e\u3044\u305a\u308c\u3082 404 \u7d4c\u8def (AdminNewsFetched / NewsUpdated / NewsDeleted) \u3092\u8e0f\u3080\u305f\u3081\u3001\u30b7\u30fc\u30c9\u30cf\u30f3\u30c9\u30eb `nw-welcome` \u3084 `nonexistent` \u306f Fake / SQL \u53cc\u65b9\u3067 404 \u304c\u540c\u5f62 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c10; \u89b3\u5bdf\u5024 'nw-welcome'\u3002",
                        "example": "nw-welcome"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/admin/news/newsResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            },
            "put": {
                "operationId": "doUpdateNews",
                "summary": "ALPS `doUpdateNews` \u306b\u5bfe\u5fdc\u3059\u308b PUT \u64cd\u4f5c\u3002",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "newsId": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "title": "\u30cb\u30e5\u30fc\u30b9ID\uff08\u5165\u529b\uff09",
                                        "description": "dtb_news.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e NewsEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f `nw-` \u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9\u4ed8\u304d\u306e\u82f1\u6570\u5b57\u3092\u751f\u6210\u3057\uff08\u30b7\u30fc\u30c9 `nw-welcome` \u3092\u542b\u3080\uff09\u3001SQL \u5b9f\u88c5\u306f dtb_news.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u975e\u6570\u5024 ID \u306f SqlNewsStorage \u3067\u306f miss \u3068\u3057\u3066\u6271\u308f\u308c getById / put / remove \u306e\u3044\u305a\u308c\u3082 404 \u7d4c\u8def (AdminNewsFetched / NewsUpdated / NewsDeleted) \u3092\u8e0f\u3080\u305f\u3081\u3001\u30b7\u30fc\u30c9\u30cf\u30f3\u30c9\u30eb `nw-welcome` \u3084 `nonexistent` \u306f Fake / SQL \u53cc\u65b9\u3067 404 \u304c\u540c\u5f62 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c10; \u89b3\u5bdf\u5024 'nw-welcome'\u3002",
                                        "example": "nw-welcome",
                                        "minLength": 0,
                                        "maxLength": 128,
                                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002 Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "newsTitle": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 32,
                                        "title": "\u30cb\u30e5\u30fc\u30b9\u30bf\u30a4\u30c8\u30eb\uff08\u5165\u529b\uff09",
                                        "description": "\u30cb\u30e5\u30fc\u30b9\u8a18\u4e8b\u306e\u898b\u51fa\u3057 Fake\u89b3\u5bdf\u6587\u5b57\u9577 4\u301c4; \u89b3\u5bdf\u5024 '\u3088\u3046\u3053\u305d'\u3002",
                                        "example": "\u3088\u3046\u3053\u305d",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "newsDescription": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 2000,
                                        "title": "\u30cb\u30e5\u30fc\u30b9\u672c\u6587\uff08\u5165\u529b\uff09",
                                        "description": "\u30cb\u30e5\u30fc\u30b9\u8a18\u4e8b\u306e\u672c\u6587\u3002HTML\u5165\u529b\u53ef\u80fd\u3067HTMLPurifier\u306b\u3088\u308b\u6d44\u5316\u3042\u308a Fake\u89b3\u5bdf\u6587\u5b57\u9577 14\u301c14; \u89b3\u5bdf\u5024 'EC-CUBE \u3078\u3088\u3046\u3053\u305d\u3002'\u3002",
                                        "example": "EC-CUBE \u3078\u3088\u3046\u3053\u305d\u3002",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "newsUrl": {
                                        "title": "\u5916\u90e8URL\uff08\u5165\u529b\uff09",
                                        "description": "\u5916\u90e8\u30ea\u30f3\u30afURL\u3002\u8a2d\u5b9a\u6642\u306f\u30cb\u30e5\u30fc\u30b9\u672c\u6587\u306e\u4ee3\u308f\u308a\u306b\u3053\u306eURL\u3078\u9077\u79fb",
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 2048,
                                        "example": "/products",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "publishDate": {
                                        "title": "\u516c\u958b\u65e5\uff08\u5165\u529b\uff09",
                                        "description": "\u30cb\u30e5\u30fc\u30b9\u306e\u516c\u958b\u65e5\u6642\u3002\u30d5\u30ed\u30f3\u30c8\u306e\u8868\u793a\u9806\u3092\u5236\u5fa1 Fake\u89b3\u5bdf\u6587\u5b57\u9577 25\u301c25; \u89b3\u5bdf\u5024 '2026-01-01T00:00:00+09:00'\u3002",
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "example": "2026-01-01T00:00:00+09:00",
                                        "$comment": "\u672a\u5165\u91d1\u30fb\u672a\u767a\u9001\u30fb\u672a\u516c\u958b\u306a\u3069\u672a\u78ba\u5b9a\u65e5\u6642\u306fEC-CUBE\u5883\u754c\u3067\u7a7a\u6587\u5b57\u3068\u3057\u3066\u73fe\u308c\u308b\u305f\u3081\u3001\u65e5\u4ed8/\u65e5\u6642\u6587\u5b57\u5217\u306b\u52a0\u3048\u3066\u7a7a\u6587\u5b57\u3092\u8a31\u5bb9\u3059\u308b\u3002 Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "linkMethod": {
                                        "type": [
                                            "boolean",
                                            "null"
                                        ],
                                        "title": "\u65b0\u898f\u30a6\u30a3\u30f3\u30c9\u30a6\u3067\u958b\u304f\uff08\u5165\u529b\uff09",
                                        "description": "\u5916\u90e8URL\u306e\u30ea\u30f3\u30af\u958b\u304d\u65b9\uff08boolean\uff09\u3002false=\u540c\u4e00\u30a6\u30a3\u30f3\u30c9\u30a6, true=\u65b0\u898f\u30a6\u30a3\u30f3\u30c9\u30a6\uff08target=\"_blank\"\uff09\u3002\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u3067target\u5c5e\u6027\u306e\u51fa\u529b\u5236\u5fa1\u306b\u4f7f\u7528 \u89b3\u5bdf\u5024 'false'\u3002",
                                        "example": "false",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    }
                                },
                                "required": [
                                    "newsId"
                                ]
                            }
                        }
                    },
                    "required": true
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/PUT/admin/news/newsResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            },
            "delete": {
                "operationId": "doDeleteNews",
                "summary": "ALPS `doDeleteNews` \u306b\u5bfe\u5fdc\u3059\u308b DELETE \u64cd\u4f5c\u3002",
                "parameters": [
                    {
                        "name": "newsId",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "\u30cb\u30e5\u30fc\u30b9ID\uff08\u5165\u529b\uff09 - dtb_news.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e NewsEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f `nw-` \u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9\u4ed8\u304d\u306e\u82f1\u6570\u5b57\u3092\u751f\u6210\u3057\uff08\u30b7\u30fc\u30c9 `nw-welcome` \u3092\u542b\u3080\uff09\u3001SQL \u5b9f\u88c5\u306f dtb_news.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u975e\u6570\u5024 ID \u306f SqlNewsStorage \u3067\u306f miss \u3068\u3057\u3066\u6271\u308f\u308c getById / put / remove \u306e\u3044\u305a\u308c\u3082 404 \u7d4c\u8def (AdminNewsFetched / NewsUpdated / NewsDeleted) \u3092\u8e0f\u3080\u305f\u3081\u3001\u30b7\u30fc\u30c9\u30cf\u30f3\u30c9\u30eb `nw-welcome` \u3084 `nonexistent` \u306f Fake / SQL \u53cc\u65b9\u3067 404 \u304c\u540c\u5f62 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c10; \u89b3\u5bdf\u5024 'nw-welcome'\u3002",
                        "example": "nw-welcome"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/DELETE/admin/news/newsResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/admin/news/news-list": {
            "get": {
                "operationId": "goNewsList",
                "summary": "ALPS `goNewsList` \u306b\u5bfe\u5fdc\u3059\u308b GET \u64cd\u4f5c\u3002",
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/admin/news/news-listResponse"
                                }
                            }
                        }
                    }
                }
            },
            "post": {
                "operationId": "doCreateNews",
                "summary": "ALPS `doCreateNews` \u306b\u5bfe\u5fdc\u3059\u308b POST \u64cd\u4f5c\u3002",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "newsTitle": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 32,
                                        "title": "\u30cb\u30e5\u30fc\u30b9\u30bf\u30a4\u30c8\u30eb\uff08\u5165\u529b\uff09",
                                        "description": "\u30cb\u30e5\u30fc\u30b9\u8a18\u4e8b\u306e\u898b\u51fa\u3057 Fake\u89b3\u5bdf\u6587\u5b57\u9577 4\u301c4; \u89b3\u5bdf\u5024 '\u3088\u3046\u3053\u305d'\u3002",
                                        "example": "\u3088\u3046\u3053\u305d",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "publishDate": {
                                        "title": "\u516c\u958b\u65e5\uff08\u5165\u529b\uff09",
                                        "description": "\u30cb\u30e5\u30fc\u30b9\u306e\u516c\u958b\u65e5\u6642\u3002\u30d5\u30ed\u30f3\u30c8\u306e\u8868\u793a\u9806\u3092\u5236\u5fa1 Fake\u89b3\u5bdf\u6587\u5b57\u9577 25\u301c25; \u89b3\u5bdf\u5024 '2026-01-01T00:00:00+09:00'\u3002",
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "example": "2026-01-01T00:00:00+09:00",
                                        "$comment": "\u672a\u5165\u91d1\u30fb\u672a\u767a\u9001\u30fb\u672a\u516c\u958b\u306a\u3069\u672a\u78ba\u5b9a\u65e5\u6642\u306fEC-CUBE\u5883\u754c\u3067\u7a7a\u6587\u5b57\u3068\u3057\u3066\u73fe\u308c\u308b\u305f\u3081\u3001\u65e5\u4ed8/\u65e5\u6642\u6587\u5b57\u5217\u306b\u52a0\u3048\u3066\u7a7a\u6587\u5b57\u3092\u8a31\u5bb9\u3059\u308b\u3002 Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "newsDescription": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 2000,
                                        "title": "\u30cb\u30e5\u30fc\u30b9\u672c\u6587\uff08\u5165\u529b\uff09",
                                        "description": "\u30cb\u30e5\u30fc\u30b9\u8a18\u4e8b\u306e\u672c\u6587\u3002HTML\u5165\u529b\u53ef\u80fd\u3067HTMLPurifier\u306b\u3088\u308b\u6d44\u5316\u3042\u308a Fake\u89b3\u5bdf\u6587\u5b57\u9577 14\u301c14; \u89b3\u5bdf\u5024 'EC-CUBE \u3078\u3088\u3046\u3053\u305d\u3002'\u3002",
                                        "example": "EC-CUBE \u3078\u3088\u3046\u3053\u305d\u3002",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "newsUrl": {
                                        "title": "\u5916\u90e8URL\uff08\u5165\u529b\uff09",
                                        "description": "\u5916\u90e8\u30ea\u30f3\u30afURL\u3002\u8a2d\u5b9a\u6642\u306f\u30cb\u30e5\u30fc\u30b9\u672c\u6587\u306e\u4ee3\u308f\u308a\u306b\u3053\u306eURL\u3078\u9077\u79fb",
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 2048,
                                        "example": "/products",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "linkMethod": {
                                        "type": [
                                            "boolean",
                                            "null"
                                        ],
                                        "title": "\u65b0\u898f\u30a6\u30a3\u30f3\u30c9\u30a6\u3067\u958b\u304f\uff08\u5165\u529b\uff09",
                                        "description": "\u5916\u90e8URL\u306e\u30ea\u30f3\u30af\u958b\u304d\u65b9\uff08boolean\uff09\u3002false=\u540c\u4e00\u30a6\u30a3\u30f3\u30c9\u30a6, true=\u65b0\u898f\u30a6\u30a3\u30f3\u30c9\u30a6\uff08target=\"_blank\"\uff09\u3002\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u3067target\u5c5e\u6027\u306e\u51fa\u529b\u5236\u5fa1\u306b\u4f7f\u7528 \u89b3\u5bdf\u5024 'false'\u3002",
                                        "default": false,
                                        "example": "false",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    }
                                },
                                "required": [
                                    "newsTitle",
                                    "publishDate"
                                ]
                            }
                        }
                    },
                    "required": true
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/POST/admin/news/news-listResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/admin/order/bulk-delete": {
            "post": {
                "operationId": "doBulkDeleteOrder",
                "summary": "ALPS `doBulkDeleteOrder` \u306b\u5bfe\u5fdc\u3059\u308b POST \u64cd\u4f5c\u3002",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "orderNos": {
                                        "type": [
                                            "array",
                                            "null"
                                        ],
                                        "title": "\u6ce8\u6587\u756a\u53f7\u4e00\u89a7\uff08\u5165\u529b\uff09",
                                        "description": "/admin/order/bulk-delete \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u6ce8\u6587\u756a\u53f7\u4e00\u89a7\u3002ALPS\u3001Fake\u89b3\u5bdf\u3001Resource\u5883\u754c\u306e\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305f\u696d\u52d9\u5951\u7d04\u3002",
                                        "items": {
                                            "type": "string",
                                            "title": "\u6ce8\u6587\u756a\u53f7",
                                            "minLength": 0,
                                            "maxLength": 64,
                                            "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation.",
                                            "description": "/admin/order/bulk-delete \u306e\u5165\u529b\u306b\u542b\u307e\u308c\u308b\u6ce8\u6587\u884c\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `orderNos` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002"
                                        },
                                        "minItems": 0,
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "ids": {
                                        "type": [
                                            "array",
                                            "null"
                                        ],
                                        "title": "\u6ce8\u6587\u756a\u53f7\u4e00\u89a7\uff08HTML form alias\uff09",
                                        "description": "EC-CUBE\u4e92\u63db\u306e\u53d7\u6ce8\u4e00\u89a7\u4e00\u62ec\u30d5\u30a9\u30fc\u30e0\u304c `ids[]` \u3068\u3057\u3066\u9001\u308b\u6ce8\u6587\u756a\u53f7\u4e00\u89a7\u3002Resource\u5883\u754c\u3067\u306f `orderNos` \u306b\u6b63\u898f\u5316\u3059\u308b\u3002",
                                        "items": {
                                            "type": "string",
                                            "title": "\u6ce8\u6587\u756a\u53f7",
                                            "minLength": 0,
                                            "maxLength": 64,
                                            "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation.",
                                            "description": "/admin/order/bulk-delete \u306eHTML\u30d5\u30a9\u30fc\u30e0\u5165\u529b\u306b\u542b\u307e\u308c\u308b\u6ce8\u6587\u884c\u3002"
                                        },
                                        "minItems": 0,
                                        "$comment": "Transport alias only; business contract remains orderNos."
                                    },
                                    "mode": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "title": "\u30d5\u30a9\u30fc\u30e0\u30e2\u30fc\u30c9",
                                        "description": "HTML form submit \u304b\u3089\u306ePOST\u3092\u8b58\u5225\u3057\u3001PRG\u5fdc\u7b54\u306b\u3059\u308b\u305f\u3081\u306e\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u5024\u3002",
                                        "enum": [
                                            "order_bulk_delete_form",
                                            null
                                        ]
                                    }
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/POST/admin/order/bulk-deleteResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/admin/order/create": {
            "post": {
                "operationId": "doCreateOrder",
                "summary": "ALPS `doCreateOrder` \u306b\u5bfe\u5fdc\u3059\u308b POST \u64cd\u4f5c\u3002",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "customerId": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "title": "\u4f1a\u54e1ID\uff08\u5165\u529b\uff09",
                                        "description": "dtb_customer.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e Entity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\uff08\u30de\u30b9\u30a2\u30b5\u30a4\u30f3\u30e1\u30f3\u30c8\u9632\u6b62\u306e\u305f\u3081\u3001Session/AuthZ \u7d4c\u7531\u3067\u8aad\u307f\u51fa\u3057\u3001\u30ea\u30af\u30a8\u30b9\u30c8\u672c\u6587\u304b\u3089\u306f\u53d7\u3051\u53d6\u3089\u306a\u3044\uff09\u3002Favorite / Cart / Order \u306e\u6240\u6709\u8005\u30ad\u30fc\u3068\u3057\u3066\u6a2a\u65ad\u4f7f\u7528 Fake\u89b3\u5bdf\u6587\u5b57\u9577 12\u301c32; \u89b3\u5bdf\u5024 'customer-001', '0123456789abcdef0123456789abcdef', 'customer-002', 'favorite-list-customer', 'favorite-html-customer', 'fedcba9876543210fedcba9876543210', 'aaaaaaaa00000000bbbbbbbb11111111', '10000000aaaa1111bbbb2222cccc3333'\u3002",
                                        "example": "customer-001",
                                        "minLength": 0,
                                        "maxLength": 128,
                                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002 Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "paymentMethodId": {
                                        "type": [
                                            "string",
                                            "integer",
                                            "null"
                                        ],
                                        "title": "\u652f\u6255\u65b9\u6cd5ID",
                                        "description": "\u53d7\u6ce8\u306b\u7d10\u3065\u304f\u652f\u6255\u65b9\u6cd5\u30de\u30b9\u30bfID\u3002Fake/EC-CUBE\u5883\u754c\u3067\u306fDB\u63a1\u756a\u5024\u3068\u3057\u3066\u6271\u3046\u3002",
                                        "example": 2,
                                        "minLength": 0,
                                        "maxLength": 128,
                                        "$comment": "\u652f\u6255\u65b9\u6cd5ID\u306f\u696d\u52d9\u4e0aID\u3060\u304c\u3001HTTP\u30d5\u30a9\u30fc\u30e0\u3067\u306f\u6587\u5b57\u5217\u3068\u3057\u3066\u5c4a\u304f\u3002Resource/Semantic\u5c64\u306e\u691c\u8a3c\u3092\u901a\u3059\u305f\u3081transport schema\u3067\u306fstring|integer\u3092\u8a31\u5bb9\u3059\u308b\u3002 Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "orderItems": {
                                        "type": [
                                            "array",
                                            "null"
                                        ],
                                        "title": "\u53d7\u6ce8\u660e\u7d30\u4e00\u89a7\uff08\u5165\u529b\uff09",
                                        "description": "/admin/order/create \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u53d7\u6ce8\u660e\u7d30\u4e00\u89a7\u3002\u914d\u5217\u8981\u7d20\u306fALPS\u610f\u5473\u3068Fake\u89b3\u5bdf\u306b\u57fa\u3065\u304d\u3001\u56fa\u5b9a\u3067\u304d\u306a\u3044\u52d5\u7684\u5217\u306f\u4f8b\u5916\u7406\u7531\u3092\u53f0\u5e33\u5316\u3059\u308b\u3002",
                                        "items": {
                                            "type": "object",
                                            "title": "\u53d7\u6ce8\u660e\u7d30\uff08\u5165\u529b\uff09",
                                            "description": "/admin/order/create \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u53d7\u6ce8\u660e\u7d30\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `orderItems` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002",
                                            "properties": {
                                                "productCode": {
                                                    "title": "\u5546\u54c1\u30b3\u30fc\u30c9\uff08\u5165\u529b\uff09",
                                                    "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 \u5546\u54c1\u3092\u8b58\u5225\u3059\u308bSKU\u3002Fake corpus\u3067\u306fASCII\u82f1\u6570\u30fb\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3067\u3001\u53d7\u6ce8\u660e\u7d30/\u30ab\u30fc\u30c8\u660e\u7d30\u306e\u7d50\u5408\u30ad\u30fc\u306b\u306a\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c26\u3002",
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ],
                                                    "minLength": 0,
                                                    "maxLength": 64,
                                                    "example": "sample-001",
                                                    "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                                },
                                                "productName": {
                                                    "type": [
                                                        "string",
                                                        "null"
                                                    ],
                                                    "minLength": 0,
                                                    "maxLength": 128,
                                                    "title": "\u5546\u54c1\u540d\uff08\u5165\u529b\uff09",
                                                    "description": "\u5546\u54c1\u306e\u8868\u793a\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 6\u301c17\u3002",
                                                    "example": "\u30b5\u30f3\u30d7\u30eb\u5546\u54c1 A",
                                                    "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                                },
                                                "quantity": {
                                                    "title": "\u6570\u91cf\uff08\u5165\u529b\uff09",
                                                    "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 Fake\u89b3\u5bdf\u6570\u5024 1\u301c3; \u89b3\u5bdf\u5024 '1', '2', '3'\u3002",
                                                    "type": [
                                                        "integer",
                                                        "string",
                                                        "null"
                                                    ],
                                                    "example": "1",
                                                    "$comment": "\u6570\u91cf\uff08\u5165\u529b\uff09\u306f\u672c\u6765\u6570\u5024/\u5217\u6319\u306e\u696d\u52d9\u5024\u3060\u304c\u3001HTTP\u30d5\u30a9\u30fc\u30e0\u3067\u306f\u6587\u5b57\u5217\u3068\u3057\u3066\u5c4a\u304f\u3002Resource/Semantic\u5c64\u306e400\u5fdc\u7b54\u3092\u596a\u308f\u306a\u3044\u305f\u3081transport schema\u3067\u306f\u6587\u5b57\u5217\u5165\u529b\u3092\u8a31\u5bb9\u3059\u308b\u3002 Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                                },
                                                "price": {
                                                    "title": "\u8ca9\u58f2\u4fa1\u683c\uff08\u5165\u529b\uff09",
                                                    "description": "\u5b9f\u969b\u306e\u8ca9\u58f2\u4fa1\u683c\uff08\u7a0e\u629c\uff09\u3002\u7a0e\u8a08\u7b97\u30fb\u5c0f\u8a08\u8a08\u7b97\u306e\u30d9\u30fc\u30b9 Fake\u89b3\u5bdf\u6570\u5024 800\u301c13500; \u89b3\u5bdf\u5024 '1200', '8000', '1500', '800', '1000', '13500', '9800'\u3002",
                                                    "type": [
                                                        "integer",
                                                        "null"
                                                    ],
                                                    "example": 1200,
                                                    "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                                },
                                                "unitPrice": {
                                                    "title": "\u5358\u4fa1\uff08\u5165\u529b\uff09",
                                                    "description": "\u660e\u7d301\u4ef6\u3042\u305f\u308a\u306e\u5358\u4fa1\u3002\u53d7\u6ce8/\u30ab\u30fc\u30c8\u660e\u7d30\u30fb\u304a\u6c17\u306b\u5165\u308a\u30b9\u30ca\u30c3\u30d7\u30b7\u30e7\u30c3\u30c8\u3067\u306f\u8ffd\u52a0\u6642\u70b9\u306e price02 \u3092\u30b9\u30ca\u30c3\u30d7\u30b7\u30e7\u30c3\u30c8\u3057\u3066\u4fdd\u6301\u3059\u308b\uff08\u5f8c\u306e\u5024\u5f15\u304d\u3084\u30de\u30b9\u30bf\u6539\u5b9a\u306b\u5f71\u97ff\u3055\u308c\u306a\u3044\uff09\u3002BeMart \u5074\u3067\u306f `int` \u5186\u6574\u6570 Fake\u89b3\u5bdf\u6570\u5024 1200\u301c9800; \u89b3\u5bdf\u5024 '1200', '9800'\u3002",
                                                    "type": [
                                                        "integer",
                                                        "string",
                                                        "null"
                                                    ],
                                                    "example": "1200",
                                                    "$comment": "\u5358\u4fa1\uff08\u5165\u529b\uff09\u306f\u672c\u6765\u6570\u5024\u306e\u696d\u52d9\u5024\u3060\u304c\u3001HTTP\u30d5\u30a9\u30fc\u30e0\u3067\u306f\u6587\u5b57\u5217\u3068\u3057\u3066\u5c4a\u304f\u3002Resource/Semantic\u5c64\u306e400\u5fdc\u7b54\u3092\u596a\u308f\u306a\u3044\u305f\u3081transport schema\u3067\u306f\u6587\u5b57\u5217\u5165\u529b\u3092\u8a31\u5bb9\u3059\u308b\u3002 Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                                },
                                                "tax": {
                                                    "type": [
                                                        "integer",
                                                        "null"
                                                    ],
                                                    "title": "\u7a0e\u984d\uff08\u5165\u529b\uff09",
                                                    "description": "\u53d7\u6ce8\u5168\u4f53\u306e\u7a0e\u984d\u5408\u8a08\uff08\u975e\u63a8\u5968\uff09\u3002\u660e\u7d30\u3054\u3068\u306e\u7a0e\u984d\u96c6\u8a08\u3068\u5dee\u7570\u304c\u751f\u3058\u308b\u5834\u5408\u304c\u3042\u308b\u305f\u3081\u3001\u6b63\u78ba\u306a\u7a0e\u984d\u306fOrderItem\u660e\u7d30\u3054\u3068\u306etax\u3092\u96c6\u8a08\u3059\u3079\u304d Fake\u89b3\u5bdf\u6570\u5024 1100\u301c1100; \u89b3\u5bdf\u5024 '1100'\u3002",
                                                    "example": 1100,
                                                    "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                                }
                                            },
                                            "additionalProperties": false,
                                            "$comment": "\u914d\u5217\u8981\u7d20\u306fFake/Resource\u3067\u89b3\u5bdf\u3055\u308c\u305f\u65e2\u77e5property\u306b\u56fa\u5b9a\u3059\u308b\u3002\u65b0\u3057\u3044\u5217\u304c\u5fc5\u8981\u306b\u306a\u3063\u305f\u5834\u5408\u306fSemantic-Ex\u89b3\u5bdf\u306b\u8ffd\u52a0\u3057\u3066schema\u3092\u66f4\u65b0\u3059\u308b\u3002 Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                        },
                                        "minItems": 0,
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "deliveryFeeTotal": {
                                        "title": "\u9001\u6599\u5408\u8a08\uff08\u5165\u529b\uff09",
                                        "description": "\u5168\u914d\u9001\u5148\u306e\u9001\u6599\u5408\u8a08\uff08\u30b9\u30ca\u30c3\u30d7\u30b7\u30e7\u30c3\u30c8\uff09\u3002deliveryFeeAmount\uff08\u5730\u57df\u5225\u9001\u6599\uff09+ deliveryFee\uff08\u5546\u54c1\u5225\u9001\u6599\uff09\u00d7\u6570\u91cf \u306e\u5408\u8a08\u3002DeliveryFeePreprocessor\u3067\u8a08\u7b97\u3002\u30ab\u30fc\u30c8\u3068\u53d7\u6ce8\u306e\u4e21\u65b9\u3067\u4f7f\u7528 Fake\u89b3\u5bdf\u6570\u5024 0\u301c800; \u89b3\u5bdf\u5024 '600', '0', '500', '800', '700'\u3002",
                                        "type": [
                                            "integer",
                                            "string",
                                            "null"
                                        ],
                                        "example": "600",
                                        "default": 0,
                                        "$comment": "\u9001\u6599\u5408\u8a08\uff08\u5165\u529b\uff09\u306f\u672c\u6765\u6570\u5024\u306e\u696d\u52d9\u5024\u3060\u304c\u3001HTTP\u30d5\u30a9\u30fc\u30e0\u3067\u306f\u6587\u5b57\u5217\u3068\u3057\u3066\u5c4a\u304f\u3002Resource/Semantic\u5c64\u306e400\u5fdc\u7b54\u3092\u596a\u308f\u306a\u3044\u305f\u3081transport schema\u3067\u306f\u6587\u5b57\u5217\u5165\u529b\u3092\u8a31\u5bb9\u3059\u308b\u3002 Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "charge": {
                                        "title": "\u624b\u6570\u6599\uff08\u5165\u529b\uff09",
                                        "description": "\u53d7\u6ce8\u306e\u6c7a\u6e08\u624b\u6570\u6599\u3002paymentCharge\uff08\u652f\u6255\u65b9\u6cd5\u30de\u30b9\u30bf\u306e\u624b\u6570\u6599\uff09\u306e\u30b9\u30ca\u30c3\u30d7\u30b7\u30e7\u30c3\u30c8\u3002PaymentChargePreprocessor\u306b\u3088\u308a\u53d7\u6ce8\u4f5c\u6210\u6642\u306b\u30b3\u30d4\u30fc\u3055\u308c\u308b Fake\u89b3\u5bdf\u6570\u5024 0\u301c300; \u89b3\u5bdf\u5024 '0', '300', '200'\u3002",
                                        "type": [
                                            "integer",
                                            "string",
                                            "null"
                                        ],
                                        "example": "0",
                                        "default": 0,
                                        "$comment": "\u624b\u6570\u6599\uff08\u5165\u529b\uff09\u306f\u672c\u6765\u6570\u5024/\u5217\u6319\u306e\u696d\u52d9\u5024\u3060\u304c\u3001HTTP\u30d5\u30a9\u30fc\u30e0\u3067\u306f\u6587\u5b57\u5217\u3068\u3057\u3066\u5c4a\u304f\u3002Resource/Semantic\u5c64\u306e400\u5fdc\u7b54\u3092\u596a\u308f\u306a\u3044\u305f\u3081transport schema\u3067\u306f\u6587\u5b57\u5217\u5165\u529b\u3092\u8a31\u5bb9\u3059\u308b\u3002 Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "discount": {
                                        "title": "\u5024\u5f15\u304d\u984d\uff08\u5165\u529b\uff09",
                                        "description": "\u53d7\u6ce8\u5168\u4f53\u306e\u5024\u5f15\u304d\u5408\u8a08\u984d\u3002\u30af\u30fc\u30dd\u30f3\u7b49\u306b\u3088\u308b\u5024\u5f15\u304d Fake\u89b3\u5bdf\u6570\u5024 0\u301c0; \u89b3\u5bdf\u5024 '0'\u3002",
                                        "type": [
                                            "integer",
                                            "string",
                                            "null"
                                        ],
                                        "example": "0",
                                        "default": 0,
                                        "$comment": "\u5024\u5f15\u304d\u984d\uff08\u5165\u529b\uff09\u306f\u672c\u6765\u6570\u5024\u306e\u696d\u52d9\u5024\u3060\u304c\u3001HTTP\u30d5\u30a9\u30fc\u30e0\u3067\u306f\u6587\u5b57\u5217\u3068\u3057\u3066\u5c4a\u304f\u3002Resource/Semantic\u5c64\u306e400\u5fdc\u7b54\u3092\u596a\u308f\u306a\u3044\u305f\u3081transport schema\u3067\u306f\u6587\u5b57\u5217\u5165\u529b\u3092\u8a31\u5bb9\u3059\u308b\u3002 Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    }
                                },
                                "required": [
                                    "customerId",
                                    "paymentMethodId",
                                    "orderItems"
                                ]
                            }
                        }
                    },
                    "required": true
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/POST/admin/order/createResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/admin/order/edit": {
            "get": {
                "operationId": "goOrder",
                "summary": "ALPS `goOrder` \u306b\u5bfe\u5fdc\u3059\u308b GET \u64cd\u4f5c\u3002",
                "parameters": [
                    {
                        "name": "orderNo",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string"
                        },
                        "description": "\u6ce8\u6587\u756a\u53f7\uff08\u5165\u529b\uff09 - \u9867\u5ba2\u5411\u3051\u306e\u6ce8\u6587\u756a\u53f7\u3002\u30d5\u30a9\u30fc\u30de\u30c3\u30c8\u306f\u30ab\u30b9\u30bf\u30de\u30a4\u30ba\u53ef\u80fd Fake\u89b3\u5bdf\u6587\u5b57\u9577 32\u301c32; \u89b3\u5bdf\u5024 'past0000000000000000000000000001'\u3002",
                        "example": "past0000000000000000000000000001"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/admin/order/editResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/admin/order/export-order": {
            "get": {
                "operationId": "goExportOrder",
                "summary": "ALPS `goExportOrder` \u306b\u5bfe\u5fdc\u3059\u308b GET \u64cd\u4f5c\u3002",
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/admin/order/export-orderResponse"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/admin/order/export-order-pdf": {
            "get": {
                "operationId": "goExportOrderPdf",
                "summary": "ALPS `goExportOrderPdf` \u306b\u5bfe\u5fdc\u3059\u308b GET \u64cd\u4f5c\u3002",
                "parameters": [
                    {
                        "name": "orderNos",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string"
                        },
                        "description": "\u6ce8\u6587\u756a\u53f7\u4e00\u89a7\uff08\u5165\u529b\uff09 - /admin/order/export-order-pdf \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u6ce8\u6587\u756a\u53f7\u4e00\u89a7\u3002ALPS\u3001Fake\u89b3\u5bdf\u3001Resource\u5883\u754c\u306e\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305f\u696d\u52d9\u5951\u7d04\u3002"
                    },
                    {
                        "name": "orderNo",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string"
                        },
                        "description": "\u6ce8\u6587\u756a\u53f7\uff08\u5165\u529b\uff09 - \u9867\u5ba2\u5411\u3051\u306e\u6ce8\u6587\u756a\u53f7\u3002\u30d5\u30a9\u30fc\u30de\u30c3\u30c8\u306f\u30ab\u30b9\u30bf\u30de\u30a4\u30ba\u53ef\u80fd Fake\u89b3\u5bdf\u6587\u5b57\u9577 32\u301c32; \u89b3\u5bdf\u5024 'past0000000000000000000000000001'\u3002",
                        "example": "past0000000000000000000000000001"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/admin/order/export-order-pdfResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            },
            "post": {
                "operationId": "goExportOrderPdf",
                "summary": "EC-CUBE admin_order_pdf_download (POST) \u2014 the order_pdf.twig options form\nsubmits POST /admin/order/export-order-pdf. Same export pipeline as onGet.",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "orderNos": {
                                        "type": "string"
                                    },
                                    "orderNo": {
                                        "type": "string"
                                    }
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/admin/order/export-order-pdfResponse"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/admin/order/export-shipping": {
            "get": {
                "operationId": "goExportShipping",
                "summary": "ALPS `goExportShipping` \u306b\u5bfe\u5fdc\u3059\u308b GET \u64cd\u4f5c\u3002",
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/admin/order/export-shippingResponse"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/admin/order/import-shipping": {
            "get": {
                "operationId": "doImportShippingCsv",
                "summary": "EC-CUBE \u51fa\u8377CSV\u767b\u9332 \u2014 Order Tier-2.",
                "description": "Thin GET renderer for `admin/Order/csv_shipping.twig` \u2014 the\nshipping-CSV upload form. The POST below accepts the uploaded\nCSV; this GET serves the upload-form shell. AUTHZ is a direct\nadmin-session check (Pattern B \u2014 no Be transition is invoked on\nthe GET path); a non-admin firewall is refused with 403.",
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/admin/order/import-shippingResponse"
                                }
                            }
                        }
                    }
                }
            },
            "post": {
                "operationId": "doImportShippingCsv",
                "summary": "ALPS `doImportShippingCsv` \u306b\u5bfe\u5fdc\u3059\u308b POST \u64cd\u4f5c\u3002",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "csv": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 5000000,
                                        "$comment": "CSV\u5217\u306e\u696d\u52d9\u59a5\u5f53\u6027\u306fCSV\u4e92\u63db\u30b5\u30fc\u30d3\u30b9\u3067\u691c\u67fb\u3059\u308b\u3002\u3053\u3053\u3067\u306fJSON\u5883\u754c\u4e0a\u306e\u6587\u5b57\u5217\u30b5\u30a4\u30ba\u3092\u5951\u7d04\u3059\u308b\u3002 Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation.",
                                        "title": "\u8f38\u9001\u30da\u30a4\u30ed\u30fc\u30c9\uff08\u5165\u529b\uff09",
                                        "description": "CSV\u30a4\u30f3\u30dd\u30fc\u30c8/\u30a8\u30af\u30b9\u30dd\u30fc\u30c8\u672c\u6587\u3002\u5217\u69cb\u9020\u306e\u8a73\u7d30\u306fCSV\u4e92\u63db\u30b5\u30fc\u30d3\u30b9\u5883\u754c\u3067\u691c\u67fb\u3059\u308b\u3002"
                                    }
                                },
                                "required": [
                                    "csv"
                                ]
                            }
                        }
                    },
                    "required": true
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/POST/admin/order/import-shippingResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/admin/order/mail-confirm": {
            "get": {
                "operationId": "goOrderMailConfirm",
                "summary": "ALPS `goOrderMailConfirm` \u306b\u5bfe\u5fdc\u3059\u308b GET \u64cd\u4f5c\u3002",
                "parameters": [
                    {
                        "name": "orderNo",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string"
                        },
                        "description": "\u6ce8\u6587\u756a\u53f7\uff08\u5165\u529b\uff09 - \u9867\u5ba2\u5411\u3051\u306e\u6ce8\u6587\u756a\u53f7\u3002\u30d5\u30a9\u30fc\u30de\u30c3\u30c8\u306f\u30ab\u30b9\u30bf\u30de\u30a4\u30ba\u53ef\u80fd Fake\u89b3\u5bdf\u6587\u5b57\u9577 32\u301c32; \u89b3\u5bdf\u5024 'past0000000000000000000000000001'\u3002",
                        "example": "past0000000000000000000000000001"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/admin/order/mail-confirmResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/admin/order/order-pdf": {
            "get": {
                "operationId": "goOrderPdf",
                "summary": "ALPS `goOrderPdf` \u306b\u5bfe\u5fdc\u3059\u308b GET \u64cd\u4f5c\u3002",
                "parameters": [
                    {
                        "name": "orderNo",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string"
                        },
                        "description": "\u6ce8\u6587\u756a\u53f7\uff08\u5165\u529b\uff09 - \u9867\u5ba2\u5411\u3051\u306e\u6ce8\u6587\u756a\u53f7\u3002\u30d5\u30a9\u30fc\u30de\u30c3\u30c8\u306f\u30ab\u30b9\u30bf\u30de\u30a4\u30ba\u53ef\u80fd Fake\u89b3\u5bdf\u6587\u5b57\u9577 32\u301c32; \u89b3\u5bdf\u5024 'past0000000000000000000000000001'\u3002",
                        "example": "past0000000000000000000000000001"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/admin/order/order-pdfResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/admin/order/send-mail": {
            "get": {
                "operationId": "doSendOrderMail",
                "summary": "EC-CUBE \u53d7\u6ce8\u30e1\u30fc\u30eb\u9001\u4fe1 \u2014 Order Tier-2.",
                "description": "Thin GET renderer for `admin/Order/mail.twig` \u2014 the order-mail\ncomposition screen. The POST below re-sends the confirmation\nmail; this GET serves the composition form keyed by the order.\nAUTHZ is a direct admin-session check (Pattern B \u2014 no Be\ntransition is invoked on the GET path). The composition fields\nrender blank so the page is faithful with empty JSON-backed fake storage.",
                "parameters": [
                    {
                        "name": "orderNo",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string"
                        },
                        "description": "\u6ce8\u6587\u756a\u53f7\uff08\u5165\u529b\uff09 - \u9867\u5ba2\u5411\u3051\u306e\u6ce8\u6587\u756a\u53f7\u3002\u30d5\u30a9\u30fc\u30de\u30c3\u30c8\u306f\u30ab\u30b9\u30bf\u30de\u30a4\u30ba\u53ef\u80fd Fake\u89b3\u5bdf\u6587\u5b57\u9577 32\u301c32; \u89b3\u5bdf\u5024 'past0000000000000000000000000001'\u3002",
                        "example": "past0000000000000000000000000001"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/admin/order/send-mailResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            },
            "post": {
                "operationId": "doSendOrderMail",
                "summary": "ALPS `doSendOrderMail` \u306b\u5bfe\u5fdc\u3059\u308b POST \u64cd\u4f5c\u3002",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "orderNo": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 64,
                                        "title": "\u6ce8\u6587\u756a\u53f7\uff08\u5165\u529b\uff09",
                                        "description": "\u9867\u5ba2\u5411\u3051\u306e\u6ce8\u6587\u756a\u53f7\u3002\u30d5\u30a9\u30fc\u30de\u30c3\u30c8\u306f\u30ab\u30b9\u30bf\u30de\u30a4\u30ba\u53ef\u80fd Fake\u89b3\u5bdf\u6587\u5b57\u9577 32\u301c32; \u89b3\u5bdf\u5024 'past0000000000000000000000000001'\u3002",
                                        "example": "past0000000000000000000000000001",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    }
                                },
                                "required": [
                                    "orderNo"
                                ]
                            }
                        }
                    },
                    "required": true
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/POST/admin/order/send-mailResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/admin/order/shipping-address": {
            "get": {
                "operationId": "doSelectShippingAddress",
                "summary": "EC-CUBE \u51fa\u8377\u767b\u9332 / \u914d\u9001\u5148\u7de8\u96c6 \u2014 Order Tier-2.",
                "description": "Thin GET renderer for `admin/Order/shipping.twig` (~709 lines).\nThe POST / PUT methods below carry the address-book-pick and the\nexplicit-overwrite transitions; this GET serves the editor shell\nkeyed by the order being shipped. BeMart has no Be transition to\nREAD an order's current shipping target, so the editor renders a\nblank shipping form \u2014 the render-smoke test exercises this with\nempty JSON-backed fake storage. AUTHZ is a direct admin-session check\n(Pattern B \u2014 no Be transition is invoked on the GET path).",
                "parameters": [
                    {
                        "name": "orderNo",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string"
                        },
                        "description": "\u6ce8\u6587\u756a\u53f7\uff08\u5165\u529b\uff09 - \u9867\u5ba2\u5411\u3051\u306e\u6ce8\u6587\u756a\u53f7\u3002\u30d5\u30a9\u30fc\u30de\u30c3\u30c8\u306f\u30ab\u30b9\u30bf\u30de\u30a4\u30ba\u53ef\u80fd Fake\u89b3\u5bdf\u6587\u5b57\u9577 32\u301c32; \u89b3\u5bdf\u5024 'past0000000000000000000000000001'\u3002",
                        "example": "past0000000000000000000000000001"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/admin/order/shipping-addressResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            },
            "post": {
                "operationId": "doSelectShippingAddress",
                "summary": "doSelectShippingAddress \u2014 pick an address-book row for the order.",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "orderNo": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 64,
                                        "title": "\u6ce8\u6587\u756a\u53f7\uff08\u5165\u529b\uff09",
                                        "description": "\u9867\u5ba2\u5411\u3051\u306e\u6ce8\u6587\u756a\u53f7\u3002\u30d5\u30a9\u30fc\u30de\u30c3\u30c8\u306f\u30ab\u30b9\u30bf\u30de\u30a4\u30ba\u53ef\u80fd Fake\u89b3\u5bdf\u6587\u5b57\u9577 32\u301c32; \u89b3\u5bdf\u5024 'past0000000000000000000000000001'\u3002",
                                        "example": "past0000000000000000000000000001",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "addressId": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "title": "\u914d\u9001\u5148\u4f4f\u6240ID\uff08\u5165\u529b\uff09",
                                        "description": "dtb_customer_address.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e AddressEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f 32\u6841hex \u3092\u751f\u6210\u3057\u3001SQL \u5b9f\u88c5\u306f dtb_customer_address.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u6240\u6709\u8005\u306f customerId\u3001AUTHZ \u691c\u67fb\u306f CustomerAddressUpdated / CustomerAddressDeleted \u3067 getById \u2192 customerId \u4e00\u81f4\u78ba\u8a8d\u306e\u9806\u3067\u5b9f\u65bd Fake\u89b3\u5bdf\u6587\u5b57\u9577 32\u301c32; \u89b3\u5bdf\u5024 'addr00000000000000000000000000a1'\u3002",
                                        "example": "addr00000000000000000000000000a1",
                                        "minLength": 0,
                                        "maxLength": 128,
                                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002 Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    }
                                },
                                "required": [
                                    "orderNo",
                                    "addressId"
                                ]
                            }
                        }
                    },
                    "required": true
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/POST/admin/order/shipping-addressResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            },
            "put": {
                "operationId": "doUpdateOrderShippingAddress",
                "summary": "doUpdateShippingAddress \u2014 overwrite the order's shipping fields.",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "orderNo": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 64,
                                        "title": "\u6ce8\u6587\u756a\u53f7\uff08\u5165\u529b\uff09",
                                        "description": "\u9867\u5ba2\u5411\u3051\u306e\u6ce8\u6587\u756a\u53f7\u3002\u30d5\u30a9\u30fc\u30de\u30c3\u30c8\u306f\u30ab\u30b9\u30bf\u30de\u30a4\u30ba\u53ef\u80fd Fake\u89b3\u5bdf\u6587\u5b57\u9577 32\u301c32; \u89b3\u5bdf\u5024 'past0000000000000000000000000001'\u3002",
                                        "example": "past0000000000000000000000000001",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "name01": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 80,
                                        "title": "\u59d3\uff08\u5165\u529b\uff09",
                                        "description": "\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u30fb\u304a\u554f\u3044\u5408\u308f\u305b\u3067\u5171\u901a\u4f7f\u7528\u3055\u308c\u308b\u59d3 Fake\u89b3\u5bdf\u6587\u5b57\u9577 2\u301c2; \u89b3\u5bdf\u5024 '\u9234\u6728', '\u5c71\u7530', '\u4f50\u85e4', '\u9ad8\u6a4b', '\u9000\u4f1a'\u3002",
                                        "example": "\u9234\u6728",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "name02": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 80,
                                        "title": "\u540d\uff08\u5165\u529b\uff09",
                                        "description": "\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u30fb\u304a\u554f\u3044\u5408\u308f\u305b\u3067\u5171\u901a\u4f7f\u7528\u3055\u308c\u308b\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 1\u301c3; \u89b3\u5bdf\u5024 '\u30a2\u30ea\u30b9', '\u592a\u90ce', '\u6b21\u90ce', '\u82b1\u5b50', '\u4e09\u90ce', '\u6e08'\u3002",
                                        "example": "\u30a2\u30ea\u30b9",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "postalCode": {
                                        "title": "\u90f5\u4fbf\u756a\u53f7\uff08\u5165\u529b\uff09",
                                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u6709\u7121\u3092\u3069\u3061\u3089\u3082\u53d7\u3051\u5165\u308c\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 7\u301c8; \u89b3\u5bdf\u5024 '1500001', '1000005', '5300001', '530-0001'; null 18/33\u3002",
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "example": "1500001",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "pref": {
                                        "title": "\u90fd\u9053\u5e9c\u770c\uff08\u5165\u529b\uff09",
                                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u90fd\u9053\u5e9c\u770cID\u3002\u4f4f\u6240\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u72b6\u614b\u3067\u306f0\u3001\u78ba\u5b9a\u4f4f\u6240\u3067\u306f1\u301c47\u3092\u4f7f\u3046\u3002 Fake\u89b3\u5bdf\u6570\u5024 13\u301c27; \u89b3\u5bdf\u5024 '13', '27'; null 3/9\u3002",
                                        "type": [
                                            "integer",
                                            "null"
                                        ],
                                        "example": 13,
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "addr01": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 32,
                                        "title": "\u5e02\u533a\u753a\u6751\uff08\u5165\u529b\uff09",
                                        "description": "\u90fd\u9053\u5e9c\u770c\u3088\u308a\u4e0b\u4f4d\u306e\u5e02\u533a\u753a\u6751\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 3\u301c7; \u89b3\u5bdf\u5024 '\u6e0b\u8c37\u533a', '\u5343\u4ee3\u7530\u533a', '\u5927\u962a\u5e02\u5317\u533a', '\u5927\u962a\u5e02\u5317\u533a\u6885\u7530'; null 18/33\u3002",
                                        "example": "\u6e0b\u8c37\u533a",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "addr02": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 32,
                                        "title": "\u756a\u5730\u30fb\u5efa\u7269\u540d\uff08\u5165\u529b\uff09",
                                        "description": "\u756a\u5730\u30fb\u30d3\u30eb\u540d\u30fb\u90e8\u5c4b\u756a\u53f7\u7b49\u306e\u8a73\u7d30\u4f4f\u6240 Fake\u89b3\u5bdf\u6587\u5b57\u9577 5\u301c8; \u89b3\u5bdf\u5024 '\u795e\u5bae\u524d1-1-1', '\u4e38\u306e\u51852-2-2', '\u6885\u75301-1-1', '1-2-3'; null 18/33\u3002",
                                        "example": "\u795e\u5bae\u524d1-1-1",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "phoneNumber": {
                                        "title": "\u96fb\u8a71\u756a\u53f7\uff08\u5165\u529b\uff09",
                                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u3002Fake corpus\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3060\u304c\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3059\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c10; \u89b3\u5bdf\u5024 '0312345678', '0901234567', '0612345678'; null 18/33\u3002",
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 13,
                                        "example": "0312345678",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    }
                                },
                                "required": [
                                    "orderNo",
                                    "name01",
                                    "name02",
                                    "postalCode",
                                    "pref",
                                    "addr01",
                                    "addr02",
                                    "phoneNumber"
                                ]
                            }
                        }
                    },
                    "required": true
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/PUT/admin/order/shipping-addressResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/admin/order/shipping-notify-mail": {
            "get": {
                "operationId": "doSendShippingNotifyMail",
                "summary": "Displays the shipping-notification confirmation form.",
                "parameters": [
                    {
                        "name": "orderNo",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "\u6ce8\u6587\u756a\u53f7\uff08\u5165\u529b\uff09 - \u9867\u5ba2\u5411\u3051\u306e\u6ce8\u6587\u756a\u53f7\u3002\u30d5\u30a9\u30fc\u30de\u30c3\u30c8\u306f\u30ab\u30b9\u30bf\u30de\u30a4\u30ba\u53ef\u80fd Fake\u89b3\u5bdf\u6587\u5b57\u9577 32\u301c32; \u89b3\u5bdf\u5024 'past0000000000000000000000000001'\u3002",
                        "example": "past0000000000000000000000000001"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/admin/order/shipping-notify-mailResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            },
            "post": {
                "operationId": "doSendShippingNotifyMail",
                "summary": "ALPS `doSendShippingNotifyMail` \u306b\u5bfe\u5fdc\u3059\u308b POST \u64cd\u4f5c\u3002",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "orderNo": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 64,
                                        "title": "\u6ce8\u6587\u756a\u53f7\uff08\u5165\u529b\uff09",
                                        "description": "\u9867\u5ba2\u5411\u3051\u306e\u6ce8\u6587\u756a\u53f7\u3002\u30d5\u30a9\u30fc\u30de\u30c3\u30c8\u306f\u30ab\u30b9\u30bf\u30de\u30a4\u30ba\u53ef\u80fd Fake\u89b3\u5bdf\u6587\u5b57\u9577 32\u301c32; \u89b3\u5bdf\u5024 'past0000000000000000000000000001'\u3002",
                                        "example": "past0000000000000000000000000001",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    }
                                },
                                "required": [
                                    "orderNo"
                                ]
                            }
                        }
                    },
                    "required": true
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/POST/admin/order/shipping-notify-mailResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/admin/order/tracking-number": {
            "put": {
                "operationId": "doUpdateTrackingNumber",
                "summary": "ALPS `doUpdateTrackingNumber` \u306b\u5bfe\u5fdc\u3059\u308b PUT \u64cd\u4f5c\u3002",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "orderNo": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 64,
                                        "title": "\u6ce8\u6587\u756a\u53f7\uff08\u5165\u529b\uff09",
                                        "description": "\u9867\u5ba2\u5411\u3051\u306e\u6ce8\u6587\u756a\u53f7\u3002\u30d5\u30a9\u30fc\u30de\u30c3\u30c8\u306f\u30ab\u30b9\u30bf\u30de\u30a4\u30ba\u53ef\u80fd Fake\u89b3\u5bdf\u6587\u5b57\u9577 32\u301c32; \u89b3\u5bdf\u5024 'past0000000000000000000000000001'\u3002",
                                        "example": "past0000000000000000000000000001",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "trackingNumber": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "title": "\u8377\u7269\u8ffd\u8de1\u756a\u53f7\uff08\u5165\u529b\uff09",
                                        "description": "\u914d\u9001\u696d\u8005\u306e\u8377\u7269\u8ffd\u8de1\u756a\u53f7\u3002confirmUrl\u3068\u7d44\u307f\u5408\u308f\u305b\u3066\u8ffd\u8de1URL\u3092\u69cb\u6210",
                                        "minLength": 0,
                                        "maxLength": 128,
                                        "$comment": "\u30ad\u30fc/\u8ffd\u8de1\u756a\u53f7\u306f\u7167\u5408\u7528\u306e\u4e0d\u900f\u660e\u6587\u5b57\u5217\u3067\u3001\u6570\u5024\u6f14\u7b97\u5bfe\u8c61\u3067\u306f\u306a\u3044\u3002 Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    }
                                },
                                "required": [
                                    "orderNo",
                                    "trackingNumber"
                                ]
                            }
                        }
                    },
                    "required": true
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/PUT/admin/order/tracking-numberResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/admin/page/page": {
            "get": {
                "operationId": "goPage",
                "summary": "ALPS `goPage` \u306b\u5bfe\u5fdc\u3059\u308b GET \u64cd\u4f5c\u3002",
                "parameters": [
                    {
                        "name": "pageId",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string"
                        },
                        "description": "\u30da\u30fc\u30b8ID\uff08\u5165\u529b\uff09 - dtb_page.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e PageEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f `pg-` \u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9\u4ed8\u304d\u306e\u82f1\u6570\u5b57\u3092\u751f\u6210\u3057\uff08\u30b7\u30fc\u30c9 `pg-homepage` \u3092\u542b\u3080\uff09\u3001SQL \u5b9f\u88c5\u306f dtb_page.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u975e\u6570\u5024 ID \u306f SqlPageStorage \u3067\u306f miss \u3068\u3057\u3066\u6271\u308f\u308c getById / put / remove \u306e\u3044\u305a\u308c\u3082 404 \u7d4c\u8def (AdminPageFetched / PageUpdated / PageDeleted) \u3092\u8e0f\u3080\u305f\u3081\u3001\u30b7\u30fc\u30c9\u30cf\u30f3\u30c9\u30eb `pg-homepage` \u3084 `nonexistent-zzz` \u306f Fake / SQL \u53cc\u65b9\u3067 404 \u304c\u540c\u5f62 Fake\u89b3\u5bdf\u6587\u5b57\u9577 6\u301c11; \u89b3\u5bdf\u5024 'pg-homepage', 'pg-company', 'pg-foo'\u3002",
                        "example": "pg-homepage"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/admin/page/pageResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            },
            "put": {
                "operationId": "doUpdatePage",
                "summary": "ALPS `doUpdatePage` \u306b\u5bfe\u5fdc\u3059\u308b PUT \u64cd\u4f5c\u3002",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "pageId": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "title": "\u30da\u30fc\u30b8ID\uff08\u5165\u529b\uff09",
                                        "description": "dtb_page.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e PageEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f `pg-` \u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9\u4ed8\u304d\u306e\u82f1\u6570\u5b57\u3092\u751f\u6210\u3057\uff08\u30b7\u30fc\u30c9 `pg-homepage` \u3092\u542b\u3080\uff09\u3001SQL \u5b9f\u88c5\u306f dtb_page.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u975e\u6570\u5024 ID \u306f SqlPageStorage \u3067\u306f miss \u3068\u3057\u3066\u6271\u308f\u308c getById / put / remove \u306e\u3044\u305a\u308c\u3082 404 \u7d4c\u8def (AdminPageFetched / PageUpdated / PageDeleted) \u3092\u8e0f\u3080\u305f\u3081\u3001\u30b7\u30fc\u30c9\u30cf\u30f3\u30c9\u30eb `pg-homepage` \u3084 `nonexistent-zzz` \u306f Fake / SQL \u53cc\u65b9\u3067 404 \u304c\u540c\u5f62 Fake\u89b3\u5bdf\u6587\u5b57\u9577 6\u301c11; \u89b3\u5bdf\u5024 'pg-homepage', 'pg-company', 'pg-foo'\u3002",
                                        "example": "pg-homepage",
                                        "minLength": 0,
                                        "maxLength": 128,
                                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002 Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "pageName": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 32,
                                        "title": "\u30da\u30fc\u30b8\u540d\uff08\u5165\u529b\uff09",
                                        "description": "\u7ba1\u7406\u753b\u9762\u3067\u306e\u30da\u30fc\u30b8\u8868\u793a\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 3\u301c6; \u89b3\u5bdf\u5024 '\u30db\u30fc\u30e0\u30da\u30fc\u30b8', '\u4f1a\u793e\u6848\u5185', 'Foo'\u3002",
                                        "example": "\u30db\u30fc\u30e0\u30da\u30fc\u30b8",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "pageUrl": {
                                        "title": "\u30da\u30fc\u30b8URL\uff08\u5165\u529b\uff09",
                                        "description": "\u30da\u30fc\u30b8\u306eURL\u30d1\u30b9\uff08Symfony\u30eb\u30fc\u30c8\u540d\u3002\u4f8b: homepage, product_list\uff09 Fake\u89b3\u5bdf\u6587\u5b57\u9577 3\u301c8; \u89b3\u5bdf\u5024 'homepage', 'company', 'foo'\u3002",
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 2048,
                                        "example": "homepage",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "pageFileName": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 32,
                                        "title": "\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u30d5\u30a1\u30a4\u30eb\u540d\uff08\u5165\u529b\uff09",
                                        "description": "\u30da\u30fc\u30b8\u306e\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u30d5\u30a1\u30a4\u30eb\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 3\u301c7; \u89b3\u5bdf\u5024 'index', 'company', 'foo'\u3002",
                                        "example": "index",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    }
                                },
                                "required": [
                                    "pageId"
                                ]
                            }
                        }
                    },
                    "required": true
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/PUT/admin/page/pageResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            },
            "delete": {
                "operationId": "doDeletePage",
                "summary": "ALPS `doDeletePage` \u306b\u5bfe\u5fdc\u3059\u308b DELETE \u64cd\u4f5c\u3002",
                "parameters": [
                    {
                        "name": "pageId",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "\u30da\u30fc\u30b8ID\uff08\u5165\u529b\uff09 - dtb_page.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e PageEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f `pg-` \u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9\u4ed8\u304d\u306e\u82f1\u6570\u5b57\u3092\u751f\u6210\u3057\uff08\u30b7\u30fc\u30c9 `pg-homepage` \u3092\u542b\u3080\uff09\u3001SQL \u5b9f\u88c5\u306f dtb_page.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u975e\u6570\u5024 ID \u306f SqlPageStorage \u3067\u306f miss \u3068\u3057\u3066\u6271\u308f\u308c getById / put / remove \u306e\u3044\u305a\u308c\u3082 404 \u7d4c\u8def (AdminPageFetched / PageUpdated / PageDeleted) \u3092\u8e0f\u3080\u305f\u3081\u3001\u30b7\u30fc\u30c9\u30cf\u30f3\u30c9\u30eb `pg-homepage` \u3084 `nonexistent-zzz` \u306f Fake / SQL \u53cc\u65b9\u3067 404 \u304c\u540c\u5f62 Fake\u89b3\u5bdf\u6587\u5b57\u9577 6\u301c11; \u89b3\u5bdf\u5024 'pg-homepage', 'pg-company', 'pg-foo'\u3002",
                        "example": "pg-homepage"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/DELETE/admin/page/pageResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/admin/page/page-list": {
            "get": {
                "operationId": "goPageList",
                "summary": "ALPS `goPageList` \u306b\u5bfe\u5fdc\u3059\u308b GET \u64cd\u4f5c\u3002",
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/admin/page/page-listResponse"
                                }
                            }
                        }
                    }
                }
            },
            "post": {
                "operationId": "doCreatePage",
                "summary": "ALPS `doCreatePage` \u306b\u5bfe\u5fdc\u3059\u308b POST \u64cd\u4f5c\u3002",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "pageName": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 32,
                                        "title": "\u30da\u30fc\u30b8\u540d\uff08\u5165\u529b\uff09",
                                        "description": "\u7ba1\u7406\u753b\u9762\u3067\u306e\u30da\u30fc\u30b8\u8868\u793a\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 3\u301c6; \u89b3\u5bdf\u5024 '\u30db\u30fc\u30e0\u30da\u30fc\u30b8', '\u4f1a\u793e\u6848\u5185', 'Foo'\u3002",
                                        "example": "\u30db\u30fc\u30e0\u30da\u30fc\u30b8",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "pageUrl": {
                                        "title": "\u30da\u30fc\u30b8URL\uff08\u5165\u529b\uff09",
                                        "description": "\u30da\u30fc\u30b8\u306eURL\u30d1\u30b9\uff08Symfony\u30eb\u30fc\u30c8\u540d\u3002\u4f8b: homepage, product_list\uff09 Fake\u89b3\u5bdf\u6587\u5b57\u9577 3\u301c8; \u89b3\u5bdf\u5024 'homepage', 'company', 'foo'\u3002",
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 2048,
                                        "example": "homepage",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "pageFileName": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 32,
                                        "title": "\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u30d5\u30a1\u30a4\u30eb\u540d\uff08\u5165\u529b\uff09",
                                        "description": "\u30da\u30fc\u30b8\u306e\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u30d5\u30a1\u30a4\u30eb\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 3\u301c7; \u89b3\u5bdf\u5024 'index', 'company', 'foo'\u3002",
                                        "example": "index",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    }
                                },
                                "required": [
                                    "pageName",
                                    "pageUrl",
                                    "pageFileName"
                                ]
                            }
                        }
                    },
                    "required": true
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/POST/admin/page/page-listResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/admin/payment/payment": {
            "get": {
                "operationId": "doUpdatePayment",
                "summary": "EC-CUBE \u652f\u6255\u65b9\u6cd5\u8a2d\u5b9a\uff08\u7de8\u96c6\uff09 \u2014 Setting/Shop Tier-2.",
                "description": "Thin GET renderer for `Setting/Shop/payment_edit.twig`. An empty\n`$paymentId` renders a blank \"new payment\" form; a known id\npre-fills the editor; an unknown id is 404. The payment-master\nlist doubles as the AUTHZ gate \u2014 no admin session \u2192 403.",
                "parameters": [
                    {
                        "name": "paymentId",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string"
                        },
                        "description": "\u652f\u6255\u65b9\u6cd5ID\uff08\u5165\u529b\uff09 - dtb_payment.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e PaymentMethodAdminEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f 32\u6841hex \u3092\u751f\u6210\u3057\u3001SQL \u5b9f\u88c5\u306f dtb_payment.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u975e\u6570\u5024 ID \u306f SqlPaymentMethodAdminStorage \u3067\u306f miss \u3068\u3057\u3066\u6271\u308f\u308c getById / put / remove \u306e\u3044\u305a\u308c\u3082 404 \u7d4c\u8def (PaymentMethodAdminUpdated / PaymentMethodAdminDeleted) \u3092\u8e0f\u3080\u305f\u3081\u3001\u30b7\u30fc\u30c9\u30cf\u30f3\u30c9\u30eb `nonexistent-zzz` \u306f Fake / SQL \u53cc\u65b9\u3067 404 \u304c\u540c\u5f62\u3002categoryId / blockId / tagId \u3068\u540c\u3058 Fake\u2194SQL \u4e8c\u91cd\u6027 Fake\u89b3\u5bdf\u6587\u5b57\u9577 7\u301c10; Fake\u89b3\u5bdf\u6570\u5024 1\u301c9; \u89b3\u5bdf\u5024 '2', 'pay-cod', 'pay-credit', '1', '9'\u3002",
                        "example": "2"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/admin/payment/paymentResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            },
            "put": {
                "operationId": "doUpdatePayment",
                "summary": "ALPS `doUpdatePayment` \u306b\u5bfe\u5fdc\u3059\u308b PUT \u64cd\u4f5c\u3002",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "paymentId": {
                                        "type": [
                                            "string",
                                            "integer",
                                            "null"
                                        ],
                                        "title": "\u652f\u6255\u65b9\u6cd5ID\uff08\u5165\u529b\uff09",
                                        "description": "dtb_payment.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e PaymentMethodAdminEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f 32\u6841hex \u3092\u751f\u6210\u3057\u3001SQL \u5b9f\u88c5\u306f dtb_payment.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u975e\u6570\u5024 ID \u306f SqlPaymentMethodAdminStorage \u3067\u306f miss \u3068\u3057\u3066\u6271\u308f\u308c getById / put / remove \u306e\u3044\u305a\u308c\u3082 404 \u7d4c\u8def (PaymentMethodAdminUpdated / PaymentMethodAdminDeleted) \u3092\u8e0f\u3080\u305f\u3081\u3001\u30b7\u30fc\u30c9\u30cf\u30f3\u30c9\u30eb `nonexistent-zzz` \u306f Fake / SQL \u53cc\u65b9\u3067 404 \u304c\u540c\u5f62\u3002categoryId / blockId / tagId \u3068\u540c\u3058 Fake\u2194SQL \u4e8c\u91cd\u6027 Fake\u89b3\u5bdf\u6587\u5b57\u9577 7\u301c10; Fake\u89b3\u5bdf\u6570\u5024 1\u301c9; \u89b3\u5bdf\u5024 '2', 'pay-cod', 'pay-credit', '1', '9'\u3002",
                                        "example": 2,
                                        "minLength": 0,
                                        "maxLength": 128,
                                        "$comment": "\u652f\u6255\u65b9\u6cd5ID\uff08\u5165\u529b\uff09\u306f\u696d\u52d9\u4e0aID\u3060\u304c\u3001HTTP\u30d5\u30a9\u30fc\u30e0\u3067\u306f\u6587\u5b57\u5217\u3068\u3057\u3066\u5c4a\u304f\u3002Resource/Semantic\u5c64\u306e\u691c\u8a3c\u3092\u901a\u3059\u305f\u3081transport schema\u3067\u306fstring|integer\u3092\u8a31\u5bb9\u3059\u308b\u3002 Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "paymentMethodName": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 255,
                                        "title": "\u652f\u6255\u65b9\u6cd5\u540d\uff08\u5165\u529b\uff09",
                                        "description": "\u652f\u6255\u65b9\u6cd5\u306e\u8868\u793a\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 4\u301c8; \u89b3\u5bdf\u5024 '\u4ee3\u91d1\u5f15\u63db', '\u30af\u30ec\u30b8\u30c3\u30c8\u30ab\u30fc\u30c9', '\u691c\u8a3c\u5931\u6557'\u3002",
                                        "example": "\u4ee3\u91d1\u5f15\u63db",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "charge": {
                                        "title": "\u624b\u6570\u6599\uff08\u5165\u529b\uff09",
                                        "description": "\u53d7\u6ce8\u306e\u6c7a\u6e08\u624b\u6570\u6599\u3002paymentCharge\uff08\u652f\u6255\u65b9\u6cd5\u30de\u30b9\u30bf\u306e\u624b\u6570\u6599\uff09\u306e\u30b9\u30ca\u30c3\u30d7\u30b7\u30e7\u30c3\u30c8\u3002PaymentChargePreprocessor\u306b\u3088\u308a\u53d7\u6ce8\u4f5c\u6210\u6642\u306b\u30b3\u30d4\u30fc\u3055\u308c\u308b Fake\u89b3\u5bdf\u6570\u5024 0\u301c300; \u89b3\u5bdf\u5024 '0', '300', '200'\u3002",
                                        "type": [
                                            "integer",
                                            "string",
                                            "null"
                                        ],
                                        "example": "0",
                                        "$comment": "\u624b\u6570\u6599\uff08\u5165\u529b\uff09\u306f\u672c\u6765\u6570\u5024/\u5217\u6319\u306e\u696d\u52d9\u5024\u3060\u304c\u3001HTTP\u30d5\u30a9\u30fc\u30e0\u3067\u306f\u6587\u5b57\u5217\u3068\u3057\u3066\u5c4a\u304f\u3002Resource/Semantic\u5c64\u306e400\u5fdc\u7b54\u3092\u596a\u308f\u306a\u3044\u305f\u3081transport schema\u3067\u306f\u6587\u5b57\u5217\u5165\u529b\u3092\u8a31\u5bb9\u3059\u308b\u3002 Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "ruleMin": {
                                        "type": [
                                            "integer",
                                            "null"
                                        ],
                                        "title": "\u4e0b\u9650\u91d1\u984d\uff08\u5165\u529b\uff09",
                                        "description": "/admin/payment/payment \u306e\u30d5\u30a9\u30fc\u30e0\u6587\u8108\u3067\u4f7f\u3046\u4e0b\u9650\u91d1\u984d\u3002\u5165\u529b\u4fdd\u6301\u3001\u521d\u671f\u5024\u3001\u518d\u8868\u793a\u306b\u5fc5\u8981\u306a\u88dc\u52a9\u5024\u3002",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "ruleMax": {
                                        "type": [
                                            "integer",
                                            "null"
                                        ],
                                        "title": "\u4e0a\u9650\u91d1\u984d\uff08\u5165\u529b\uff09",
                                        "description": "/admin/payment/payment \u306e\u30d5\u30a9\u30fc\u30e0\u6587\u8108\u3067\u4f7f\u3046\u4e0a\u9650\u91d1\u984d\u3002\u5165\u529b\u4fdd\u6301\u3001\u521d\u671f\u5024\u3001\u518d\u8868\u793a\u306b\u5fc5\u8981\u306a\u88dc\u52a9\u5024\u3002",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "visible": {
                                        "type": [
                                            "boolean",
                                            "null"
                                        ],
                                        "title": "\u51e6\u7406\u72b6\u614b\u30d5\u30e9\u30b0\uff08\u5165\u529b\uff09",
                                        "description": "\u89b3\u5bdf\u5024 'true'\u3002",
                                        "example": "true",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    }
                                },
                                "required": [
                                    "paymentId"
                                ]
                            }
                        }
                    },
                    "required": true
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/PUT/admin/payment/paymentResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            },
            "delete": {
                "operationId": "doDeletePayment",
                "summary": "ALPS `doDeletePayment` \u306b\u5bfe\u5fdc\u3059\u308b DELETE \u64cd\u4f5c\u3002",
                "parameters": [
                    {
                        "name": "paymentId",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "\u652f\u6255\u65b9\u6cd5ID\uff08\u5165\u529b\uff09 - dtb_payment.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e PaymentMethodAdminEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f 32\u6841hex \u3092\u751f\u6210\u3057\u3001SQL \u5b9f\u88c5\u306f dtb_payment.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u975e\u6570\u5024 ID \u306f SqlPaymentMethodAdminStorage \u3067\u306f miss \u3068\u3057\u3066\u6271\u308f\u308c getById / put / remove \u306e\u3044\u305a\u308c\u3082 404 \u7d4c\u8def (PaymentMethodAdminUpdated / PaymentMethodAdminDeleted) \u3092\u8e0f\u3080\u305f\u3081\u3001\u30b7\u30fc\u30c9\u30cf\u30f3\u30c9\u30eb `nonexistent-zzz` \u306f Fake / SQL \u53cc\u65b9\u3067 404 \u304c\u540c\u5f62\u3002categoryId / blockId / tagId \u3068\u540c\u3058 Fake\u2194SQL \u4e8c\u91cd\u6027 Fake\u89b3\u5bdf\u6587\u5b57\u9577 7\u301c10; Fake\u89b3\u5bdf\u6570\u5024 1\u301c9; \u89b3\u5bdf\u5024 '2', 'pay-cod', 'pay-credit', '1', '9'\u3002",
                        "example": "2"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/DELETE/admin/payment/paymentResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/admin/payment/payment-list": {
            "get": {
                "operationId": "goPaymentList",
                "summary": "ALPS `goPaymentList` \u306b\u5bfe\u5fdc\u3059\u308b GET \u64cd\u4f5c\u3002",
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/admin/payment/payment-listResponse"
                                }
                            }
                        }
                    }
                }
            },
            "post": {
                "operationId": "doCreatePayment",
                "summary": "ALPS `doCreatePayment` \u306b\u5bfe\u5fdc\u3059\u308b POST \u64cd\u4f5c\u3002",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "paymentMethodName": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 255,
                                        "title": "\u652f\u6255\u65b9\u6cd5\u540d\uff08\u5165\u529b\uff09",
                                        "description": "\u652f\u6255\u65b9\u6cd5\u306e\u8868\u793a\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 4\u301c8; \u89b3\u5bdf\u5024 '\u4ee3\u91d1\u5f15\u63db', '\u30af\u30ec\u30b8\u30c3\u30c8\u30ab\u30fc\u30c9', '\u691c\u8a3c\u5931\u6557'\u3002",
                                        "example": "\u4ee3\u91d1\u5f15\u63db",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "charge": {
                                        "title": "\u624b\u6570\u6599\uff08\u5165\u529b\uff09",
                                        "description": "\u53d7\u6ce8\u306e\u6c7a\u6e08\u624b\u6570\u6599\u3002paymentCharge\uff08\u652f\u6255\u65b9\u6cd5\u30de\u30b9\u30bf\u306e\u624b\u6570\u6599\uff09\u306e\u30b9\u30ca\u30c3\u30d7\u30b7\u30e7\u30c3\u30c8\u3002PaymentChargePreprocessor\u306b\u3088\u308a\u53d7\u6ce8\u4f5c\u6210\u6642\u306b\u30b3\u30d4\u30fc\u3055\u308c\u308b Fake\u89b3\u5bdf\u6570\u5024 0\u301c300; \u89b3\u5bdf\u5024 '0', '300', '200'\u3002",
                                        "type": [
                                            "integer",
                                            "string",
                                            "null"
                                        ],
                                        "example": "0",
                                        "default": 0,
                                        "$comment": "\u624b\u6570\u6599\uff08\u5165\u529b\uff09\u306f\u672c\u6765\u6570\u5024/\u5217\u6319\u306e\u696d\u52d9\u5024\u3060\u304c\u3001HTTP\u30d5\u30a9\u30fc\u30e0\u3067\u306f\u6587\u5b57\u5217\u3068\u3057\u3066\u5c4a\u304f\u3002Resource/Semantic\u5c64\u306e400\u5fdc\u7b54\u3092\u596a\u308f\u306a\u3044\u305f\u3081transport schema\u3067\u306f\u6587\u5b57\u5217\u5165\u529b\u3092\u8a31\u5bb9\u3059\u308b\u3002 Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "ruleMin": {
                                        "type": [
                                            "integer",
                                            "null"
                                        ],
                                        "title": "\u4e0b\u9650\u91d1\u984d\uff08\u5165\u529b\uff09",
                                        "description": "/admin/payment/payment-list \u306e\u30d5\u30a9\u30fc\u30e0\u6587\u8108\u3067\u4f7f\u3046\u4e0b\u9650\u91d1\u984d\u3002\u5165\u529b\u4fdd\u6301\u3001\u521d\u671f\u5024\u3001\u518d\u8868\u793a\u306b\u5fc5\u8981\u306a\u88dc\u52a9\u5024\u3002",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "ruleMax": {
                                        "type": [
                                            "integer",
                                            "null"
                                        ],
                                        "title": "\u4e0a\u9650\u91d1\u984d\uff08\u5165\u529b\uff09",
                                        "description": "/admin/payment/payment-list \u306e\u30d5\u30a9\u30fc\u30e0\u6587\u8108\u3067\u4f7f\u3046\u4e0a\u9650\u91d1\u984d\u3002\u5165\u529b\u4fdd\u6301\u3001\u521d\u671f\u5024\u3001\u518d\u8868\u793a\u306b\u5fc5\u8981\u306a\u88dc\u52a9\u5024\u3002",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "visible": {
                                        "type": [
                                            "boolean",
                                            "null"
                                        ],
                                        "title": "\u51e6\u7406\u72b6\u614b\u30d5\u30e9\u30b0\uff08\u5165\u529b\uff09",
                                        "description": "\u89b3\u5bdf\u5024 'true'\u3002",
                                        "default": true,
                                        "example": "true",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    }
                                },
                                "required": [
                                    "paymentMethodName"
                                ]
                            }
                        }
                    },
                    "required": true
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/POST/admin/payment/payment-listResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/admin/product/csv-category": {
            "get": {
                "operationId": "goExportCategory",
                "summary": "ALPS `goExportCategory` \u306b\u5bfe\u5fdc\u3059\u308b GET \u64cd\u4f5c\u3002",
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/admin/product/csv-categoryResponse"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/admin/product/csv-class-category": {
            "get": {
                "operationId": "goExportClassCategory",
                "summary": "ALPS `goExportClassCategory` \u306b\u5bfe\u5fdc\u3059\u308b GET \u64cd\u4f5c\u3002",
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/admin/product/csv-class-categoryResponse"
                                }
                            }
                        }
                    }
                }
            },
            "post": {
                "operationId": "doImportClassCategoryCsv",
                "summary": "Imports the \u898f\u683c\u5206\u985e CSV (doImportClassCategoryCsv).",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "csv": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 5000000,
                                        "$comment": "CSV\u5217\u306e\u696d\u52d9\u59a5\u5f53\u6027\u306fCSV\u4e92\u63db\u30b5\u30fc\u30d3\u30b9\u3067\u691c\u67fb\u3059\u308b\u3002\u3053\u3053\u3067\u306fJSON\u5883\u754c\u4e0a\u306e\u6587\u5b57\u5217\u30b5\u30a4\u30ba\u3092\u5951\u7d04\u3059\u308b\u3002 Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation.",
                                        "title": "\u8f38\u9001\u30da\u30a4\u30ed\u30fc\u30c9\uff08\u5165\u529b\uff09",
                                        "description": "CSV\u30a4\u30f3\u30dd\u30fc\u30c8/\u30a8\u30af\u30b9\u30dd\u30fc\u30c8\u672c\u6587\u3002\u5217\u69cb\u9020\u306e\u8a73\u7d30\u306fCSV\u4e92\u63db\u30b5\u30fc\u30d3\u30b9\u5883\u754c\u3067\u691c\u67fb\u3059\u308b\u3002",
                                        "default": ""
                                    }
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/POST/admin/product/csv-class-categoryResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/admin/product/csv-class-name": {
            "get": {
                "operationId": "goExportClassName",
                "summary": "ALPS `goExportClassName` \u306b\u5bfe\u5fdc\u3059\u308b GET \u64cd\u4f5c\u3002",
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/admin/product/csv-class-nameResponse"
                                }
                            }
                        }
                    }
                }
            },
            "post": {
                "operationId": "doImportClassNameCsv",
                "summary": "Imports the \u898f\u683c\u540d CSV (doImportClassNameCsv).",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "csv": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 5000000,
                                        "$comment": "CSV\u5217\u306e\u696d\u52d9\u59a5\u5f53\u6027\u306fCSV\u4e92\u63db\u30b5\u30fc\u30d3\u30b9\u3067\u691c\u67fb\u3059\u308b\u3002\u3053\u3053\u3067\u306fJSON\u5883\u754c\u4e0a\u306e\u6587\u5b57\u5217\u30b5\u30a4\u30ba\u3092\u5951\u7d04\u3059\u308b\u3002 Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation.",
                                        "title": "\u8f38\u9001\u30da\u30a4\u30ed\u30fc\u30c9\uff08\u5165\u529b\uff09",
                                        "description": "CSV\u30a4\u30f3\u30dd\u30fc\u30c8/\u30a8\u30af\u30b9\u30dd\u30fc\u30c8\u672c\u6587\u3002\u5217\u69cb\u9020\u306e\u8a73\u7d30\u306fCSV\u4e92\u63db\u30b5\u30fc\u30d3\u30b9\u5883\u754c\u3067\u691c\u67fb\u3059\u308b\u3002",
                                        "default": ""
                                    }
                                }
                            }
                        }
                    }
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/POST/admin/product/csv-class-nameResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/admin/product/csv-product": {
            "get": {
                "operationId": "goExportProduct",
                "summary": "ALPS `goExportProduct` \u306b\u5bfe\u5fdc\u3059\u308b GET \u64cd\u4f5c\u3002",
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/admin/product/csv-productResponse"
                                }
                            }
                        }
                    }
                }
            }
        },
        "/admin/product/edit": {
            "get": {
                "operationId": "goProduct",
                "summary": "ALPS `goProduct` \u306b\u5bfe\u5fdc\u3059\u308b GET \u64cd\u4f5c\u3002",
                "parameters": [
                    {
                        "name": "productCode",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string"
                        },
                        "description": "\u5546\u54c1\u30b3\u30fc\u30c9\uff08\u5165\u529b\uff09 - SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 \u5546\u54c1\u3092\u8b58\u5225\u3059\u308bSKU\u3002Fake corpus\u3067\u306fASCII\u82f1\u6570\u30fb\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3067\u3001\u53d7\u6ce8\u660e\u7d30/\u30ab\u30fc\u30c8\u660e\u7d30\u306e\u7d50\u5408\u30ad\u30fc\u306b\u306a\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c26\u3002",
                        "example": "sample-001"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/admin/product/editResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/admin/product/product-class": {
            "get": {
                "operationId": "goProductClass",
                "summary": "ALPS `goProductClass` \u306b\u5bfe\u5fdc\u3059\u308b GET \u64cd\u4f5c\u3002",
                "parameters": [
                    {
                        "name": "productCode",
                        "in": "query",
                        "required": false,
                        "schema": {
                            "type": "string"
                        },
                        "description": "\u5546\u54c1\u30b3\u30fc\u30c9\uff08\u5165\u529b\uff09 - SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 \u5546\u54c1\u3092\u8b58\u5225\u3059\u308bSKU\u3002Fake corpus\u3067\u306fASCII\u82f1\u6570\u30fb\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3067\u3001\u53d7\u6ce8\u660e\u7d30/\u30ab\u30fc\u30c8\u660e\u7d30\u306e\u7d50\u5408\u30ad\u30fc\u306b\u306a\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c26\u3002",
                        "example": "sample-001"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/admin/product/product-classResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            },
            "post": {
                "operationId": "doRegisterProductClass",
                "summary": "ALPS `doRegisterProductClass` \u306b\u5bfe\u5fdc\u3059\u308b POST \u64cd\u4f5c\u3002",
                "description": "A real browser submits the EC-CUBE \u65b0\u898f\u898f\u683c matrix row, whose Aura\nfields are the snake_case leaf names of {@see \\AdminProductClassForm}:\n`product_code` (leaf SKU), `price02`, `stock`, `stock_unlimited`\n(scalar checkbox \u2014 present only when checked) and `delivery_fee`.\nThe parent product is carried by the hidden camelCase `productCode`.\nBlank money/stock fields arrive as empty strings (`price02=&stock=`),\nwhich a non-nullable `int` boundary would reject with a 400, so the\ntransport empties are normalised to int here (EC-CUBE IntegerType\nsemantics). The authoritative SKU is the parent `productCode`; the\nper-cell `product_code` leaf is accepted but not used for the write.",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "productCode": {
                                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                                        "description": "\u767b\u9332\u5bfe\u8c61\u306e\u89aa\u5546\u54c1\u3092\u8b58\u5225\u3059\u308bSKU/\u54c1\u756a\u3002\u30d5\u30a9\u30fc\u30e0\u306e hidden camelCase \u30d5\u30a3\u30fc\u30eb\u30c9\u304b\u3089\u4f9b\u7d66\u3055\u308c\u308b\u3002\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u306e\u7d50\u5408\u30ad\u30fc\u3002",
                                        "type": "string",
                                        "minLength": 1,
                                        "maxLength": 64,
                                        "example": "sample-001"
                                    },
                                    "price02": {
                                        "title": "\u8ca9\u58f2\u4fa1\u683c",
                                        "description": "\u767b\u9332\u3059\u308b\u898f\u683c(SKU)\u306e\u8ca9\u58f2\u4fa1\u683c\uff08\u7a0e\u629c\uff09\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3002\u30d6\u30e9\u30a6\u30b6\u306f text input \u3092\u6587\u5b57\u5217\u3068\u3057\u3066\u9001\u4fe1\u3057\u3001\u7a7a\u6b04\u306f\u7a7a\u6587\u5b57\u5217\u3067\u5c4a\u304f\u305f\u3081\u3001transport \u3067\u306f string/null \u3082\u53d7\u3051\u5165\u308c\u3066 Resource \u5883\u754c\u3067 int \u306b\u6b63\u898f\u5316\u3059\u308b\u3002",
                                        "type": [
                                            "integer",
                                            "string",
                                            "null"
                                        ],
                                        "example": 1200,
                                        "$comment": "Request schema is transport-level; a browser posts text inputs as strings and blank fields as empty strings. Business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "stock": {
                                        "title": "\u5728\u5eab\u6570",
                                        "description": "\u767b\u9332\u3059\u308b\u898f\u683c(SKU)\u306e\u7269\u7406\u5728\u5eab\u6570\u3002stockUnlimited=true \u306e\u5834\u5408\u306f\u7121\u8996\u3055\u308c\u308b\u3002\u30d6\u30e9\u30a6\u30b6\u306f\u6587\u5b57\u5217\u3068\u3057\u3066\u9001\u4fe1\u3057\u3001\u7a7a\u6b04\u306f\u7a7a\u6587\u5b57\u5217\u3067\u5c4a\u304f\u3002",
                                        "type": [
                                            "integer",
                                            "string",
                                            "null"
                                        ],
                                        "default": 0,
                                        "example": 10
                                    },
                                    "stock_unlimited": {
                                        "title": "\u5728\u5eab\u7121\u5236\u9650\uff08\u898f\u683c\u30bb\u30eb\uff09",
                                        "description": "EC-CUBE \u5546\u54c1\u898f\u683c\u30de\u30c8\u30ea\u30af\u30b9\u306e checkbox\u3002\u30c1\u30a7\u30c3\u30af\u6642\u306e\u307f\u9001\u4fe1\u3055\u308c\u308b\u3002\u5358\u4e00\u884c\u30dd\u30fc\u30c8\u3067\u306f camelCase stockUnlimited \u3092\u6a29\u5a01\u3068\u3059\u308b\u3002",
                                        "type": [
                                            "string",
                                            "boolean",
                                            "null"
                                        ],
                                        "example": "1"
                                    },
                                    "delivery_fee": {
                                        "title": "\u5546\u54c1\u5225\u9001\u6599\uff08\u898f\u683c\u30bb\u30eb\uff09",
                                        "description": "EC-CUBE \u5546\u54c1\u898f\u683c\u30de\u30c8\u30ea\u30af\u30b9\u306e\u9001\u6599\u5165\u529b\u3002\u5358\u4e00\u884c\u30dd\u30fc\u30c8\u3067\u306f camelCase deliveryFee \u3092\u6a29\u5a01\u3068\u3059\u308b\u3002",
                                        "type": [
                                            "string",
                                            "integer",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 12,
                                        "example": "0"
                                    },
                                    "product_code": {
                                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9\uff08\u898f\u683c\u30bb\u30eb\uff09",
                                        "description": "EC-CUBE \u5546\u54c1\u898f\u683c\u30de\u30c8\u30ea\u30af\u30b9\u306e \u65b0\u898f\u898f\u683c \u30bb\u30eb\u304c\u9001\u4fe1\u3059\u308b SKU \u30b3\u30fc\u30c9\u5165\u529b\u3002\u5358\u4e00\u884c\u30dd\u30fc\u30c8\u3067\u306f\u767b\u9332\u306b\u306f\u7528\u3044\u305a\u3001\u89aa productCode \u3092\u6a29\u5a01\u3068\u3059\u308b\u3002",
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 64,
                                        "example": "sample-001"
                                    }
                                },
                                "required": [
                                    "productCode"
                                ]
                            }
                        }
                    },
                    "required": true
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/POST/admin/product/product-classResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/admin/tag/tag": {
            "delete": {
                "operationId": "doDeleteTag",
                "summary": "ALPS `doDeleteTag` \u306b\u5bfe\u5fdc\u3059\u308b DELETE \u64cd\u4f5c\u3002",
                "parameters": [
                    {
                        "name": "tagId",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "\u30bf\u30b0ID\uff08\u5165\u529b\uff09 - dtb_tag.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e TagEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f `tg-` \u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9\u4ed8\u304d\u306e\u82f1\u6570\u5b57\u3092\u751f\u6210\u3057\u3001SQL \u5b9f\u88c5\u306f dtb_tag.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u975e\u6570\u5024 ID \u306f SqlTagStorage \u3067\u306f miss \u3068\u3057\u3066\u6271\u308f\u308c getById / put / remove \u306e\u3044\u305a\u308c\u3082 404 \u7d4c\u8def (TagDeleted) \u3092\u8e0f\u3080\u305f\u3081\u3001\u30b7\u30fc\u30c9\u30cf\u30f3\u30c9\u30eb `tg-new` / `tg-sale` \u306f Fake \u5c02\u7528 Fake\u89b3\u5bdf\u6587\u5b57\u9577 6\u301c7; \u89b3\u5bdf\u5024 'tg-new', 'tg-sale'\u3002",
                        "example": "tg-new"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/DELETE/admin/tag/tagResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/admin/tag/tag-list": {
            "get": {
                "operationId": "goTagList",
                "summary": "ALPS `goTagList` \u306b\u5bfe\u5fdc\u3059\u308b GET \u64cd\u4f5c\u3002",
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/admin/tag/tag-listResponse"
                                }
                            }
                        }
                    }
                }
            },
            "post": {
                "operationId": "doCreateTag",
                "summary": "ALPS `doCreateTag` \u306b\u5bfe\u5fdc\u3059\u308b POST \u64cd\u4f5c\u3002",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "tagName": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 32,
                                        "title": "\u30bf\u30b0\u540d\uff08\u5165\u529b\uff09",
                                        "description": "\u5546\u54c1\u306b\u4ed8\u4e0e\u3059\u308b\u30bf\u30b0\u306e\u8868\u793a\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 3\u301c3; \u89b3\u5bdf\u5024 '\u65b0\u5546\u54c1', '\u30bb\u30fc\u30eb'\u3002",
                                        "example": "\u65b0\u5546\u54c1",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    }
                                },
                                "required": [
                                    "tagName"
                                ]
                            }
                        }
                    },
                    "required": true
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/POST/admin/tag/tag-listResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/admin/tax-rule/tax-rule": {
            "delete": {
                "operationId": "doDeleteTaxRule",
                "summary": "ALPS `doDeleteTaxRule` \u306b\u5bfe\u5fdc\u3059\u308b DELETE \u64cd\u4f5c\u3002",
                "parameters": [
                    {
                        "name": "taxRuleId",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "\u7a0e\u7387\u30eb\u30fc\u30ebID\uff08\u5165\u529b\uff09 - dtb_tax_rule.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e TaxRuleEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f 32\u6841hex \u3092\u751f\u6210\u3057\u3001SQL \u5b9f\u88c5\u306f dtb_tax_rule.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u975e\u6570\u5024 ID \u306f SqlTaxRuleStorage \u3067\u306f miss \u3068\u3057\u3066\u6271\u308f\u308c getById / put / remove \u306e\u3044\u305a\u308c\u3082 404 \u7d4c\u8def (TaxRuleDeleted) \u3092\u8e0f\u3080\u305f\u3081\u3001\u30b7\u30fc\u30c9\u30cf\u30f3\u30c9\u30eb\uff08`nonexistent-zzz` \u7b49\uff09\u306f Fake / SQL \u53cc\u65b9\u3067 404 \u304c\u540c\u5f62 Fake\u89b3\u5bdf\u6587\u5b57\u9577 5\u301c6; \u89b3\u5bdf\u5024 'tax-10', 'tax-8'\u3002",
                        "example": "tax-10"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/DELETE/admin/tax-rule/tax-ruleResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/admin/tax-rule/tax-rule-list": {
            "get": {
                "operationId": "goTaxRuleList",
                "summary": "ALPS `goTaxRuleList` \u306b\u5bfe\u5fdc\u3059\u308b GET \u64cd\u4f5c\u3002",
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/admin/tax-rule/tax-rule-listResponse"
                                }
                            }
                        }
                    }
                }
            },
            "post": {
                "operationId": "doCreateTaxRule",
                "summary": "ALPS `doCreateTaxRule` \u306b\u5bfe\u5fdc\u3059\u308b POST \u64cd\u4f5c\u3002",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "taxRate": {
                                        "type": [
                                            "number",
                                            "string",
                                            "null"
                                        ],
                                        "title": "\u7a0e\u7387",
                                        "description": "\u7a0e\u30eb\u30fc\u30eb\u306b\u9069\u7528\u3059\u308b\u7a0e\u7387\u30028.0\u308410.0\u306e\u3088\u3046\u306a\u5c0f\u6570\u8868\u73fe\u3092\u542b\u3080\u767e\u5206\u7387\u3002",
                                        "example": "10.0",
                                        "$comment": "\u7a0e\u7387\u306f\u672c\u6765\u6570\u5024/\u5217\u6319\u306e\u696d\u52d9\u5024\u3060\u304c\u3001HTTP\u30d5\u30a9\u30fc\u30e0\u3067\u306f\u6587\u5b57\u5217\u3068\u3057\u3066\u5c4a\u304f\u3002Resource/Semantic\u5c64\u306e400\u5fdc\u7b54\u3092\u596a\u308f\u306a\u3044\u305f\u3081transport schema\u3067\u306f\u6587\u5b57\u5217\u5165\u529b\u3092\u8a31\u5bb9\u3059\u308b\u3002 Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "applyDate": {
                                        "title": "\u9069\u7528\u65e5\uff08\u5165\u529b\uff09",
                                        "description": "\u3053\u306e\u7a0e\u7387\u30eb\u30fc\u30eb\u304c\u6709\u52b9\u306b\u306a\u308b\u65e5\u6642\u3002\u9069\u7528\u65e5\u4ee5\u964d\u306e\u6ce8\u6587\u306b\u3053\u306e\u7a0e\u7387\u304c\u9069\u7528\u3055\u308c\u308b\u3002\u8907\u6570\u306e\u7a0e\u7387\u30eb\u30fc\u30eb\u304c\u3042\u308b\u5834\u5408\u3001\u6ce8\u6587\u65e5\u6642\u70b9\u3067\u6700\u3082\u65b0\u3057\u3044\u9069\u7528\u65e5\u306e\u30eb\u30fc\u30eb\u304c\u4f7f\u7528\u3055\u308c\u308b\u3002\u904e\u53bb\u306e\u53d7\u6ce8\u306b\u306f\u5f71\u97ff\u3057\u306a\u3044 Fake\u89b3\u5bdf\u6587\u5b57\u9577 25\u301c25; \u89b3\u5bdf\u5024 '2024-04-01T00:00:00+09:00', '2023-10-01T00:00:00+09:00'\u3002",
                                        "type": "string",
                                        "example": "2024-04-01T00:00:00+09:00",
                                        "$comment": "\u672a\u5165\u91d1\u30fb\u672a\u767a\u9001\u30fb\u672a\u516c\u958b\u306a\u3069\u672a\u78ba\u5b9a\u65e5\u6642\u306fEC-CUBE\u5883\u754c\u3067\u7a7a\u6587\u5b57\u3068\u3057\u3066\u73fe\u308c\u308b\u305f\u3081\u3001\u65e5\u4ed8/\u65e5\u6642\u6587\u5b57\u5217\u306b\u52a0\u3048\u3066\u7a7a\u6587\u5b57\u3092\u8a31\u5bb9\u3059\u308b\u3002 Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "roundingType": {
                                        "type": [
                                            "integer",
                                            "null"
                                        ],
                                        "title": "\u7aef\u6570\u51e6\u7406\uff08\u5165\u529b\uff09",
                                        "description": "1=\u56db\u6368\u4e94\u5165, 2=\u5207\u308a\u6368\u3066, 3=\u5207\u308a\u4e0a\u3052\u3002\u53d7\u6ce8\u660e\u7d30\u306e\u7a0e\u984d\u8a08\u7b97\u6642\u306e\u7aef\u6570\u51e6\u7406\u65b9\u5f0f\u3002TaxRule\u3067\u8a2d\u5b9a Fake\u89b3\u5bdf\u6570\u5024 1\u301c1; \u89b3\u5bdf\u5024 '1'\u3002",
                                        "default": 1,
                                        "example": 1,
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    }
                                },
                                "required": [
                                    "taxRate",
                                    "applyDate"
                                ]
                            }
                        }
                    },
                    "required": true
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/POST/admin/tax-rule/tax-rule-listResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/admin/template/template-add": {
            "get": {
                "operationId": "goTemplateInstall",
                "summary": "ALPS `goTemplateInstall` \u306b\u5bfe\u5fdc\u3059\u308b GET \u64cd\u4f5c\u3002",
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/admin/template/template-addResponse"
                                }
                            }
                        }
                    }
                }
            },
            "post": {
                "operationId": "doInstallTemplate",
                "summary": "Installs an uploaded design template (doInstallTemplate). ALPS\nmarks it `unsafe` \u2192 POST.",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "templateCode": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 255,
                                        "title": "\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u30b3\u30fc\u30c9\uff08\u5165\u529b\uff09",
                                        "description": "\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u306e\u4e00\u610f\u8b58\u5225\u30b3\u30fc\u30c9\u3002\u6a19\u6e96\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u306f'default'",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "templateName": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "minLength": 0,
                                        "maxLength": 32,
                                        "title": "\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u540d\uff08\u5165\u529b\uff09",
                                        "description": "\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u306e\u8868\u793a\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c11; \u89b3\u5bdf\u5024 '\u30c7\u30d5\u30a9\u30eb\u30c8 (PC)', '\u30c7\u30d5\u30a9\u30eb\u30c8 (\u30b9\u30de\u30db)'\u3002",
                                        "example": "\u30c7\u30d5\u30a9\u30eb\u30c8 (PC)",
                                        "$comment": "Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    },
                                    "file": {
                                        "type": [
                                            "object",
                                            "null"
                                        ],
                                        "title": "\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u30d5\u30a1\u30a4\u30eb",
                                        "description": "multipart/form-data \u306e `file` \u307e\u305f\u306f Resource \u30c6\u30b9\u30c8\u3067\u6e21\u3055\u308c\u308b FileUpload \u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3002\u8a73\u7d30\u691c\u8a3c\u306f `#[InputFile]` \u304c\u62c5\u3046\u3002",
                                        "$comment": "Koriym\\FileUpload\\FileUpload / ErrorFileUpload \u306f schema \u3067\u306f\u4e0d\u900f\u660e\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3068\u3057\u3066\u6271\u3046\u3002"
                                    }
                                },
                                "required": [
                                    "templateCode",
                                    "templateName"
                                ]
                            }
                        }
                    },
                    "required": true
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/POST/admin/template/template-addResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        },
        "/admin/template/template-list": {
            "get": {
                "operationId": "goTemplateList",
                "summary": "ALPS `goTemplateList` \u306b\u5bfe\u5fdc\u3059\u308b GET \u64cd\u4f5c\u3002",
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/GET/admin/template/template-listResponse"
                                }
                            }
                        }
                    }
                }
            },
            "put": {
                "operationId": "doSelectTemplate",
                "summary": "Activates a template (doSelectTemplate). ALPS idempotent \u2192 PUT.",
                "description": "ALPS `doSelectTemplate` \u306b\u5bfe\u5fdc\u3059\u308b PUT \u64cd\u4f5c\u3002",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "templateId": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "title": "\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8ID\uff08\u5165\u529b\uff09",
                                        "description": "dtb_template.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e TemplateEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f `tp-` \u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9\u4ed8\u304d\u306e\u30b7\u30fc\u30c9\u30cf\u30f3\u30c9\u30eb\uff08tp-default-pc / tp-default-sp\uff09\u3092\u6301\u3061\u3001SQL \u5b9f\u88c5\u306f dtb_template.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002Template \u306b\u306f list \u30a2\u30d5\u30a9\u30fc\u30c0\u30f3\u30b9\u306e\u307f\uff08goTemplateList\uff09\u3067\u4f5c\u6210\u30fb\u66f4\u65b0\u30fb\u524a\u9664\u304c\u7121\u3044\u305f\u3081 ID \u30b8\u30a7\u30cd\u30ec\u30fc\u30bf\u306f\u5b58\u5728\u305b\u305a\u3001\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u306f\u30a4\u30f3\u30b9\u30c8\u30fc\u30e9/fixture \u304c seed \u3057\u305f\u884c\u304b\u3089\u8aad\u307f\u51fa\u3059\u306e\u307f\u3002layoutId / blockId / categoryId \u3068\u540c\u3058 Fake\u2194SQL \u4e8c\u91cd\u6027\u3002templateCode\uff08\u4e00\u610f\u306e install-time \u30b3\u30fc\u30c9\uff09\u3068\u306f\u5225\u7269 \u2014 TemplateEntity \u306e\u6295\u5f71\u306f id \u30cf\u30f3\u30c9\u30eb\u3092\u7528\u3044 templateCode \u306f\u6295\u5f71\u5916 Fake\u89b3\u5bdf\u6587\u5b57\u9577 13\u301c13; \u89b3\u5bdf\u5024 'tp-default-pc', 'tp-default-sp'\u3002",
                                        "example": "tp-default-pc",
                                        "minLength": 0,
                                        "maxLength": 128,
                                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002 Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    }
                                },
                                "required": [
                                    "templateId"
                                ]
                            }
                        }
                    },
                    "required": true
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/PUT/admin/template/template-listResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            },
            "delete": {
                "operationId": "doDeleteTemplate",
                "summary": "Deletes a template (doDeleteTemplate). ALPS idempotent \u2192 DELETE.",
                "description": "ALPS `doDeleteTemplate` \u306b\u5bfe\u5fdc\u3059\u308b DELETE \u64cd\u4f5c\u3002",
                "parameters": [
                    {
                        "name": "templateId",
                        "in": "query",
                        "required": true,
                        "schema": {
                            "type": "string"
                        },
                        "description": "\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8ID\uff08\u5165\u529b\uff09 - dtb_template.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e TemplateEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f `tp-` \u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9\u4ed8\u304d\u306e\u30b7\u30fc\u30c9\u30cf\u30f3\u30c9\u30eb\uff08tp-default-pc / tp-default-sp\uff09\u3092\u6301\u3061\u3001SQL \u5b9f\u88c5\u306f dtb_template.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002Template \u306b\u306f list \u30a2\u30d5\u30a9\u30fc\u30c0\u30f3\u30b9\u306e\u307f\uff08goTemplateList\uff09\u3067\u4f5c\u6210\u30fb\u66f4\u65b0\u30fb\u524a\u9664\u304c\u7121\u3044\u305f\u3081 ID \u30b8\u30a7\u30cd\u30ec\u30fc\u30bf\u306f\u5b58\u5728\u305b\u305a\u3001\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u306f\u30a4\u30f3\u30b9\u30c8\u30fc\u30e9/fixture \u304c seed \u3057\u305f\u884c\u304b\u3089\u8aad\u307f\u51fa\u3059\u306e\u307f\u3002layoutId / blockId / categoryId \u3068\u540c\u3058 Fake\u2194SQL \u4e8c\u91cd\u6027\u3002templateCode\uff08\u4e00\u610f\u306e install-time \u30b3\u30fc\u30c9\uff09\u3068\u306f\u5225\u7269 \u2014 TemplateEntity \u306e\u6295\u5f71\u306f id \u30cf\u30f3\u30c9\u30eb\u3092\u7528\u3044 templateCode \u306f\u6295\u5f71\u5916 Fake\u89b3\u5bdf\u6587\u5b57\u9577 13\u301c13; \u89b3\u5bdf\u5024 'tp-default-pc', 'tp-default-sp'\u3002",
                        "example": "tp-default-pc"
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/DELETE/admin/template/template-listResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            },
            "post": {
                "operationId": "doDownloadTemplate",
                "summary": "Downloads a template zip (doDownloadTemplate). ALPS unsafe \u2192 POST.",
                "description": "ALPS `doDownloadTemplate` \u306b\u5bfe\u5fdc\u3059\u308b POST \u64cd\u4f5c\u3002",
                "requestBody": {
                    "content": {
                        "application/json": {
                            "schema": {
                                "type": "object",
                                "properties": {
                                    "templateId": {
                                        "type": [
                                            "string",
                                            "null"
                                        ],
                                        "title": "\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8ID\uff08\u5165\u529b\uff09",
                                        "description": "dtb_template.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e TemplateEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f `tp-` \u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9\u4ed8\u304d\u306e\u30b7\u30fc\u30c9\u30cf\u30f3\u30c9\u30eb\uff08tp-default-pc / tp-default-sp\uff09\u3092\u6301\u3061\u3001SQL \u5b9f\u88c5\u306f dtb_template.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002Template \u306b\u306f list \u30a2\u30d5\u30a9\u30fc\u30c0\u30f3\u30b9\u306e\u307f\uff08goTemplateList\uff09\u3067\u4f5c\u6210\u30fb\u66f4\u65b0\u30fb\u524a\u9664\u304c\u7121\u3044\u305f\u3081 ID \u30b8\u30a7\u30cd\u30ec\u30fc\u30bf\u306f\u5b58\u5728\u305b\u305a\u3001\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u306f\u30a4\u30f3\u30b9\u30c8\u30fc\u30e9/fixture \u304c seed \u3057\u305f\u884c\u304b\u3089\u8aad\u307f\u51fa\u3059\u306e\u307f\u3002layoutId / blockId / categoryId \u3068\u540c\u3058 Fake\u2194SQL \u4e8c\u91cd\u6027\u3002templateCode\uff08\u4e00\u610f\u306e install-time \u30b3\u30fc\u30c9\uff09\u3068\u306f\u5225\u7269 \u2014 TemplateEntity \u306e\u6295\u5f71\u306f id \u30cf\u30f3\u30c9\u30eb\u3092\u7528\u3044 templateCode \u306f\u6295\u5f71\u5916 Fake\u89b3\u5bdf\u6587\u5b57\u9577 13\u301c13; \u89b3\u5bdf\u5024 'tp-default-pc', 'tp-default-sp'\u3002",
                                        "example": "tp-default-pc",
                                        "minLength": 0,
                                        "maxLength": 128,
                                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002 Request schema is transport-level; business invalid values are allowed through to Resource/Semantic validation."
                                    }
                                },
                                "required": [
                                    "templateId"
                                ]
                            }
                        }
                    },
                    "required": true
                },
                "responses": {
                    "200": {
                        "description": "Successful response",
                        "content": {
                            "application/json": {
                                "schema": {
                                    "$ref": "#/components/schemas/POST/admin/template/template-listResponse"
                                }
                            }
                        }
                    },
                    "400": {
                        "description": "Bad Request"
                    }
                }
            }
        }
    },
    "components": {
        "schemas": {
            "GET/action-redirectResponse": {
                "title": "GET /action-redirect response",
                "description": "GET /action-redirect response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "message": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30e1\u30c3\u30bb\u30fc\u30b8",
                        "description": "/action-redirect \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u51e6\u7406\u7d50\u679c\u30e1\u30c3\u30bb\u30fc\u30b8\u3002\u6ce8\u6587\u6642\u304a\u554f\u3044\u5408\u308f\u305b\u6b04\u3067\u306f\u306a\u304f\u3001\u753b\u9762\u9077\u79fb\u3084\u5b8c\u4e86\u8868\u793a\u306e\u305f\u3081\u306e\u901a\u77e5\u6587\u3002",
                        "example": "\u914d\u9001\u306f\u5e73\u65e5\u5e0c\u671b\u3067\u3059\u3002"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape."
            },
            "POST/action-redirectResponse": {
                "title": "POST /action-redirect response",
                "description": "POST /action-redirect response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "message": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30e1\u30c3\u30bb\u30fc\u30b8",
                        "description": "/action-redirect \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u51e6\u7406\u7d50\u679c\u30e1\u30c3\u30bb\u30fc\u30b8\u3002\u6ce8\u6587\u6642\u304a\u554f\u3044\u5408\u308f\u305b\u6b04\u3067\u306f\u306a\u304f\u3001\u753b\u9762\u9077\u79fb\u3084\u5b8c\u4e86\u8868\u793a\u306e\u305f\u3081\u306e\u901a\u77e5\u6587\u3002",
                        "example": "\u914d\u9001\u306f\u5e73\u65e5\u5e0c\u671b\u3067\u3059\u3002"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape."
            },
            "GET/cartResponse": {
                "title": "GET /cart response",
                "description": "GET /cart response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "carts": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u30ab\u30fc\u30c8\u4e00\u89a7",
                        "description": "/cart \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u30ab\u30fc\u30c8\u4e00\u89a7\u3002\u914d\u5217\u8981\u7d20\u306fALPS\u610f\u5473\u3068Fake\u89b3\u5bdf\u306b\u57fa\u3065\u304d\u3001\u56fa\u5b9a\u3067\u304d\u306a\u3044\u52d5\u7684\u5217\u306f\u4f8b\u5916\u7406\u7531\u3092\u53f0\u5e33\u5316\u3059\u308b\u3002",
                        "items": {
                            "type": [
                                "object",
                                "null"
                            ],
                            "title": "\u30ab\u30fc\u30c8",
                            "description": "/cart \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u30ab\u30fc\u30c8\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `carts` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002",
                            "properties": {
                                "cartKey": {
                                    "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                                    "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b \u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u30ad\u30fc\u3002ALPS\u306ecartKey\u306f\u30bb\u30c3\u30b7\u30e7\u30f3\u63a5\u982d\u8f9e\u3068\u8ca9\u58f2\u7a2e\u5225ID\u304b\u3089\u69cb\u6210\u3055\u308c\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 18\u301c23; \u89b3\u5bdf\u5024 'session-prefix-1_1', 'session-prefix-1_2', 'session-checkout-pilot5'\u3002",
                                    "type": "string",
                                    "minLength": 3,
                                    "maxLength": 128,
                                    "pattern": "^.+_[0-9]+$",
                                    "example": "session-prefix-1_1"
                                },
                                "saleTypeName": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 32,
                                    "title": "\u8ca9\u58f2\u7a2e\u5225",
                                    "description": "\u8ca9\u58f2\u7a2e\u5225\u306e\u540d\u79f0\u3002\u30ab\u30fc\u30c8\u5206\u96e2\u306e\u57fa\u6e96\u3068\u306a\u308b\u3002\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8(cartKey)\u306b\u5206\u96e2\u3055\u308c\u308b Fake\u89b3\u5bdf\u6587\u5b57\u9577 4\u301c8; \u89b3\u5bdf\u5024 '\u901a\u5e38\u8ca9\u58f2', '\u4e88\u7d04\u8ca9\u58f2', '\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u8ca9\u58f2'\u3002",
                                    "example": "\u901a\u5e38\u8ca9\u58f2"
                                },
                                "items": {
                                    "type": [
                                        "array",
                                        "null"
                                    ],
                                    "title": "\u660e\u7d30\u4e00\u89a7",
                                    "description": "/cart \u306e\u89aa\u30aa\u30d6\u30b8\u30a7\u30af\u30c8 `cartsItem` \u306b\u542b\u307e\u308c\u308b\u660e\u7d30\u914d\u5217\u3002\u5546\u54c1\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u306e\u6587\u8108\u3067\u89e3\u91c8\u3059\u308b\u3002",
                                    "items": {
                                        "type": [
                                            "object",
                                            "null"
                                        ],
                                        "title": "\u660e\u7d30",
                                        "description": "/cart \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u660e\u7d30\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `items` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002",
                                        "properties": {
                                            "className2": {
                                                "type": [
                                                    "string",
                                                    "null"
                                                ],
                                                "minLength": 0,
                                                "maxLength": 255,
                                                "title": "\u7b2c2\u898f\u683c\u540d",
                                                "description": "/cart \u306e\u753b\u9762\u8868\u793a\u306b\u4f7f\u3046\u7b2c2\u898f\u683c\u540d\u3002\u696d\u52d9\u30a8\u30f3\u30c6\u30a3\u30c6\u30a3\u305d\u306e\u3082\u306e\u3067\u306f\u306a\u304f\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8/\u4e00\u89a7\u8868\u793a\u306e\u88dc\u52a9\u5024\u3002"
                                            },
                                            "productName": {
                                                "type": [
                                                    "string",
                                                    "null"
                                                ],
                                                "minLength": 0,
                                                "maxLength": 128,
                                                "title": "\u5546\u54c1\u540d",
                                                "description": "\u5546\u54c1\u306e\u8868\u793a\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 6\u301c17\u3002",
                                                "example": "\u30b5\u30f3\u30d7\u30eb\u5546\u54c1 A"
                                            },
                                            "price": {
                                                "title": "\u8ca9\u58f2\u4fa1\u683c\uff08\u8868\u793a/\u8a08\u7b97\u7528\uff09",
                                                "description": "\u5b9f\u969b\u306e\u8ca9\u58f2\u4fa1\u683c\uff08\u7a0e\u629c\uff09\u3002\u7a0e\u8a08\u7b97\u30fb\u5c0f\u8a08\u8a08\u7b97\u306e\u30d9\u30fc\u30b9 Fake\u89b3\u5bdf\u6570\u5024 800\u301c13500; \u89b3\u5bdf\u5024 '1200', '8000', '1500', '800', '1000', '13500', '9800'\u3002",
                                                "type": "integer",
                                                "minimum": 0,
                                                "maximum": 999999999,
                                                "example": 1200
                                            },
                                            "productId": {
                                                "type": [
                                                    "integer",
                                                    "null"
                                                ],
                                                "minimum": 0,
                                                "maximum": 2147483647,
                                                "title": "\u5546\u54c1ID",
                                                "description": "dtb_product.id \u2014 \u5546\u54c1\u30d8\u30c3\u30c0\u306e\u4ee3\u7406\u30ad\u30fc\u3002\u5546\u54c1\u8a73\u7d30\u30ea\u30f3\u30af\uff08EC-CUBE \u306e url('product_detail', {id})\uff09\u306e\u30bf\u30fc\u30b2\u30c3\u30c8\u3068\u3057\u3066\u753b\u9762\u306b\u9732\u51fa\u3059\u308b\u3002\u81ea\u7136\u30ad\u30fc productCode\uff08dtb_product_class \u5074\uff09\u3068\u306f\u5225\u7269\u3067\u3001\u3053\u3061\u3089\u306f\u5546\u54c1\u30d8\u30c3\u30c0\u5358\u4f4d\u306e\u8b58\u5225\u5b50",
                                                "$comment": "EC-CUBE\u5074\u306e\u63a1\u756aID\u3068\u3057\u3066\u6271\u3046\u3002"
                                            },
                                            "classCategoryName2": {
                                                "type": [
                                                    "string",
                                                    "null"
                                                ],
                                                "minLength": 0,
                                                "maxLength": 255,
                                                "title": "\u7b2c2\u898f\u683c\u5206\u985e\u540d",
                                                "description": "/cart \u306e\u753b\u9762\u8868\u793a\u306b\u4f7f\u3046\u7b2c2\u898f\u683c\u5206\u985e\u540d\u3002\u696d\u52d9\u30a8\u30f3\u30c6\u30a3\u30c6\u30a3\u305d\u306e\u3082\u306e\u3067\u306f\u306a\u304f\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8/\u4e00\u89a7\u8868\u793a\u306e\u88dc\u52a9\u5024\u3002"
                                            },
                                            "classCategoryName1": {
                                                "type": [
                                                    "string",
                                                    "null"
                                                ],
                                                "minLength": 0,
                                                "maxLength": 255,
                                                "title": "\u7b2c1\u898f\u683c\u5206\u985e\u540d",
                                                "description": "/cart \u306e\u753b\u9762\u8868\u793a\u306b\u4f7f\u3046\u7b2c1\u898f\u683c\u5206\u985e\u540d\u3002\u696d\u52d9\u30a8\u30f3\u30c6\u30a3\u30c6\u30a3\u305d\u306e\u3082\u306e\u3067\u306f\u306a\u304f\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8/\u4e00\u89a7\u8868\u793a\u306e\u88dc\u52a9\u5024\u3002"
                                            },
                                            "mainImage": {
                                                "title": "\u30e1\u30a4\u30f3\u753b\u50cfURI",
                                                "description": "/cart \u306e\u753b\u9762\u8868\u793a\u306b\u4f7f\u3046\u30e1\u30a4\u30f3\u753b\u50cfURI\u3002\u696d\u52d9\u30a8\u30f3\u30c6\u30a3\u30c6\u30a3\u305d\u306e\u3082\u306e\u3067\u306f\u306a\u304f\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8/\u4e00\u89a7\u8868\u793a\u306e\u88dc\u52a9\u5024\u3002",
                                                "type": [
                                                    "string",
                                                    "null"
                                                ],
                                                "format": "uri-reference",
                                                "minLength": 1,
                                                "maxLength": 2048,
                                                "example": "/products"
                                            },
                                            "productCode": {
                                                "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                                                "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 \u5546\u54c1\u3092\u8b58\u5225\u3059\u308bSKU\u3002Fake corpus\u3067\u306fASCII\u82f1\u6570\u30fb\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3067\u3001\u53d7\u6ce8\u660e\u7d30/\u30ab\u30fc\u30c8\u660e\u7d30\u306e\u7d50\u5408\u30ad\u30fc\u306b\u306a\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c26\u3002",
                                                "type": "string",
                                                "minLength": 0,
                                                "maxLength": 64,
                                                "example": "sample-001"
                                            },
                                            "className1": {
                                                "type": [
                                                    "string",
                                                    "null"
                                                ],
                                                "minLength": 0,
                                                "maxLength": 255,
                                                "title": "\u7b2c1\u898f\u683c\u540d",
                                                "description": "/cart \u306e\u753b\u9762\u8868\u793a\u306b\u4f7f\u3046\u7b2c1\u898f\u683c\u540d\u3002\u696d\u52d9\u30a8\u30f3\u30c6\u30a3\u30c6\u30a3\u305d\u306e\u3082\u306e\u3067\u306f\u306a\u304f\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8/\u4e00\u89a7\u8868\u793a\u306e\u88dc\u52a9\u5024\u3002"
                                            },
                                            "quantity": {
                                                "title": "\u6570\u91cf",
                                                "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 Fake\u89b3\u5bdf\u6570\u5024 1\u301c3; \u89b3\u5bdf\u5024 '1', '2', '3'\u3002",
                                                "type": "integer",
                                                "minimum": 1,
                                                "maximum": 999,
                                                "example": 1
                                            },
                                            "productClassId": {
                                                "type": [
                                                    "integer",
                                                    "null"
                                                ],
                                                "minimum": 0,
                                                "maximum": 2147483647,
                                                "title": "\u5546\u54c1\u898f\u683cID",
                                                "description": "dtb_product_class.id \u2014 \u7279\u5b9a SKU\uff08\u898f\u683c\u30d0\u30ea\u30a8\u30fc\u30b7\u30e7\u30f3\u884c\uff09\u306e\u4ee3\u7406\u30ad\u30fc\u3002EC-CUBE \u306e\u30ab\u30fc\u30c8\u753b\u9762\u3067\u306f\u524a\u9664/\u6570\u91cf\u5897\u6e1b\u30ea\u30f3\u30af\uff08cart_handle_item \u306e productClassId \u30d1\u30e9\u30e1\u30fc\u30bf\uff09\u306e\u30ad\u30fc\u3068\u3057\u3066\u4f7f\u308f\u308c\u308b\u3002CartItem 1\u4ef6\u306f default class \u3067\u306f\u306a\u304f\u8cfc\u5165\u3055\u308c\u305f\u5177\u4f53\u7684\u306a product_class \u3092\u6307\u3059",
                                                "$comment": "EC-CUBE\u5074\u306e\u63a1\u756aID\u3068\u3057\u3066\u6271\u3046\u3002"
                                            }
                                        },
                                        "additionalProperties": false,
                                        "$comment": "\u914d\u5217\u8981\u7d20\u306fFake/Resource\u3067\u89b3\u5bdf\u3055\u308c\u305f\u65e2\u77e5property\u306b\u56fa\u5b9a\u3059\u308b\u3002\u65b0\u3057\u3044\u5217\u304c\u5fc5\u8981\u306b\u306a\u3063\u305f\u5834\u5408\u306fSemantic-Ex\u89b3\u5bdf\u306b\u8ffd\u52a0\u3057\u3066schema\u3092\u66f4\u65b0\u3059\u308b\u3002"
                                    },
                                    "minItems": 0
                                },
                                "saleTypeId": {
                                    "type": [
                                        "integer",
                                        "null"
                                    ],
                                    "minimum": 0,
                                    "maximum": 99,
                                    "title": "\u8ca9\u58f2\u7a2e\u5225ID",
                                    "description": "dtb_product_class.sale_type_id \u2014 mtb_sale_type \u3078\u306e FK\uff081=\u901a\u5e38\u8ca9\u58f2, 2=\u4e88\u7d04\u8ca9\u58f2, 3=\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u8ca9\u58f2\uff09\u3002cartKey \u306e\u7d44\u307f\u7acb\u3066(`{sessionPrefix}_{saleTypeId}`)\u306b\u7528\u3044\u3089\u308c\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u3092\u5225\u30ab\u30fc\u30c8\u306b\u5206\u96e2\u3059\u308b\u57fa\u6e96\u3002\u30de\u30b9\u30bf\u672a\u767b\u9332\u6642\u306f 0 \u306b\u30d5\u30a9\u30fc\u30eb\u30d0\u30c3\u30af Fake\u89b3\u5bdf\u6570\u5024 1\u301c3; \u89b3\u5bdf\u5024 '1', '2', '3'\u3002",
                                    "example": 1
                                },
                                "totalPrice": {
                                    "title": "\u30ab\u30fc\u30c8\u5408\u8a08\u91d1\u984d",
                                    "description": "\u30ab\u30fc\u30c8\u5185\u306e\u7a0e\u8fbc\u5408\u8a08\u91d1\u984d\u3002PurchaseFlow.calculateTotal()\u3067\u6bce\u56de\u518d\u8a08\u7b97\u3055\u308c\u308b\u30ad\u30e3\u30c3\u30b7\u30e5\u5024\u3002\u53d7\u6ce8\u306etotal\u3068\u306f\u5225\u30d7\u30ed\u30d1\u30c6\u30a3 Fake\u89b3\u5bdf\u6570\u5024 0\u301c3600; \u89b3\u5bdf\u5024 '0', '1500', '3600'\u3002",
                                    "type": "integer",
                                    "minimum": 0,
                                    "maximum": 999999999,
                                    "example": 0
                                },
                                "deliveryFeeTotal": {
                                    "title": "\u9001\u6599\u5408\u8a08",
                                    "description": "\u5168\u914d\u9001\u5148\u306e\u9001\u6599\u5408\u8a08\uff08\u30b9\u30ca\u30c3\u30d7\u30b7\u30e7\u30c3\u30c8\uff09\u3002deliveryFeeAmount\uff08\u5730\u57df\u5225\u9001\u6599\uff09+ deliveryFee\uff08\u5546\u54c1\u5225\u9001\u6599\uff09\u00d7\u6570\u91cf \u306e\u5408\u8a08\u3002DeliveryFeePreprocessor\u3067\u8a08\u7b97\u3002\u30ab\u30fc\u30c8\u3068\u53d7\u6ce8\u306e\u4e21\u65b9\u3067\u4f7f\u7528 Fake\u89b3\u5bdf\u6570\u5024 0\u301c800; \u89b3\u5bdf\u5024 '600', '0', '500', '800', '700'\u3002",
                                    "type": [
                                        "integer",
                                        "null"
                                    ],
                                    "minimum": 0,
                                    "maximum": 999999999,
                                    "example": 600
                                }
                            },
                            "additionalProperties": false,
                            "$comment": "\u914d\u5217\u8981\u7d20\u306fFake/Resource\u3067\u89b3\u5bdf\u3055\u308c\u305f\u65e2\u77e5property\u306b\u56fa\u5b9a\u3059\u308b\u3002\u65b0\u3057\u3044\u5217\u304c\u5fc5\u8981\u306b\u306a\u3063\u305f\u5834\u5408\u306fSemantic-Ex\u89b3\u5bdf\u306b\u8ffd\u52a0\u3057\u3066schema\u3092\u66f4\u65b0\u3059\u308b\u3002"
                        },
                        "minItems": 0
                    },
                    "cartCount": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 2147483647,
                        "title": "\u30ab\u30fc\u30c8\u4ef6\u6570",
                        "description": "/cart \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8fd4\u3059\u30ab\u30fc\u30c8\u4ef6\u6570\u3002\u4e00\u89a7\u30fb\u96c6\u8a08\u30fb\u51e6\u7406\u7d50\u679c\u306e\u898f\u6a21\u3092\u8868\u3059\u975e\u8ca0\u6574\u6570\u3002"
                    },
                    "totalPrice": {
                        "title": "\u30ab\u30fc\u30c8\u5408\u8a08\u91d1\u984d",
                        "description": "\u30ab\u30fc\u30c8\u5185\u306e\u7a0e\u8fbc\u5408\u8a08\u91d1\u984d\u3002PurchaseFlow.calculateTotal()\u3067\u6bce\u56de\u518d\u8a08\u7b97\u3055\u308c\u308b\u30ad\u30e3\u30c3\u30b7\u30e5\u5024\u3002\u53d7\u6ce8\u306etotal\u3068\u306f\u5225\u30d7\u30ed\u30d1\u30c6\u30a3 Fake\u89b3\u5bdf\u6570\u5024 0\u301c3600; \u89b3\u5bdf\u5024 '0', '1500', '3600'\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 0
                    },
                    "csrfToken": {
                        "title": "\u51e6\u7406\u8b58\u5225\u5b50",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u306e\u507d\u9020\u3092\u9632\u3050\u305f\u3081\u306b\u9001\u4fe1\u5143\u753b\u9762\u3067\u767a\u884c\u3055\u308c\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "deliveryFeeTotal": {
                        "title": "\u9001\u6599\u5408\u8a08",
                        "description": "\u5168\u914d\u9001\u5148\u306e\u9001\u6599\u5408\u8a08\uff08\u30b9\u30ca\u30c3\u30d7\u30b7\u30e7\u30c3\u30c8\uff09\u3002deliveryFeeAmount\uff08\u5730\u57df\u5225\u9001\u6599\uff09+ deliveryFee\uff08\u5546\u54c1\u5225\u9001\u6599\uff09\u00d7\u6570\u91cf \u306e\u5408\u8a08\u3002DeliveryFeePreprocessor\u3067\u8a08\u7b97\u3002\u30ab\u30fc\u30c8\u3068\u53d7\u6ce8\u306e\u4e21\u65b9\u3067\u4f7f\u7528 Fake\u89b3\u5bdf\u6570\u5024 0\u301c800; \u89b3\u5bdf\u5024 '600', '0', '500', '800', '700'\u3002",
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 600
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "carts",
                    "cartCount",
                    "totalPrice",
                    "deliveryFeeTotal"
                ]
            },
            "GET/contactResponse": {
                "title": "GET /contact response",
                "description": "GET /contact response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "form": {
                        "type": [
                            "object",
                            "array",
                            "null"
                        ],
                        "title": "\u5165\u529b\u30d5\u30a9\u30fc\u30e0",
                        "description": "Aura/WebForm\u7531\u6765\u306e\u30d5\u30a9\u30fc\u30e0\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3002\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5185\u90e8\u69cb\u9020\u306e\u305f\u3081schema\u3067\u306f\u5b58\u5728\u3068\u578b\u306e\u307f\u3092\u5951\u7d04\u3059\u308b\u3002",
                        "$comment": "Aura/WebForm\u7531\u6765\u306e\u4e0d\u900f\u660e\u30d5\u30a9\u30fc\u30e0\u8868\u73fe\u3002Resource\u5883\u754c\u3067\u306f\u30d5\u30a9\u30fc\u30e0\u306e\u5b58\u5728\u3068\u30b3\u30f3\u30c6\u30ad\u30b9\u30c8\u3060\u3051\u3092\u5951\u7d04\u3057\u3001\u5185\u90e8\u69cb\u9020\u306f\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5883\u754c\u306b\u59d4\u306d\u308b\u305f\u3081\u8ffd\u52a0\u30ad\u30fc\u5236\u7d04\u3092\u7f6e\u304b\u306a\u3044\u3002"
                    },
                    "fields": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u9759\u7684\u8868\u793a\u30d5\u30a3\u30fc\u30eb\u30c9",
                        "description": "/contact \u3067\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u3078\u6e21\u3059\u8868\u793a\u7528\u30d5\u30a3\u30fc\u30eb\u30c9\u96c6\u5408\u3002\u30d5\u30a9\u30fc\u30e0\u5165\u529b\u5024\u3067\u306f\u306a\u304f\u753b\u9762\u6587\u8108\u30c7\u30fc\u30bf\u3002",
                        "items": {
                            "type": "string",
                            "title": "\u8868\u793a\u30d5\u30a3\u30fc\u30eb\u30c9",
                            "minLength": 0,
                            "maxLength": 255,
                            "description": "/contact \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u51e6\u7406\u884c\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `fields` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002"
                        }
                    },
                    "submitTo": {
                        "type": [
                            "object",
                            "null"
                        ],
                        "title": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5148\u30ea\u30f3\u30af",
                        "description": "/contact \u306e\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u306b\u4f7f\u3046\u9001\u4fe1\u5148\u30ea\u30f3\u30af\u3002HTTP\u30e1\u30bd\u30c3\u30c9\u3068\u9077\u79fb\u5148\u3092\u307e\u3068\u3081\u3001unsafe\u64cd\u4f5c\u306e\u5165\u53e3\u3092\u660e\u793a\u3059\u308b\u3002",
                        "properties": {
                            "rel": {
                                "type": [
                                    "string",
                                    "null"
                                ],
                                "minLength": 0,
                                "maxLength": 255,
                                "title": "\u30ea\u30f3\u30af\u95a2\u4fc2",
                                "description": "/contact \u306e\u30ea\u30f3\u30af\u95a2\u4fc2\u540d\u3002ALPS descriptor id\u3068\u5bfe\u5fdc\u3057\u3001\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u304c\u9077\u79fb\u610f\u5473\u3092\u8b58\u5225\u3059\u308b\u3002"
                            },
                            "href": {
                                "title": "\u30ea\u30f3\u30afURI\u53c2\u7167\uff08URI\u53c2\u7167\uff09",
                                "description": "\u30da\u30fc\u30b8\u306eURL\u30d1\u30b9\uff08Symfony\u30eb\u30fc\u30c8\u540d\u3002\u4f8b: homepage, product_list\uff09",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "method": {
                                "type": [
                                    "string",
                                    "null"
                                ],
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ],
                                "title": "HTTP\u30e1\u30bd\u30c3\u30c9",
                                "description": "/contact \u306e\u30ea\u30f3\u30af\u307e\u305f\u306f\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u3067\u4f7f\u3046HTTP\u30e1\u30bd\u30c3\u30c9\u3002GET/POST\u7b49\u306e\u9077\u79fb\u65b9\u6cd5\u3092\u8868\u3059\u3002"
                            }
                        },
                        "additionalProperties": false,
                        "required": [
                            "rel",
                            "href",
                            "method"
                        ]
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "\u3053\u306e\u30ec\u30b9\u30dd\u30f3\u30b9/\u64cd\u4f5c\u304c\u5bfe\u5fdc\u3059\u308bALPS\u9077\u79fbID\u3002\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u306e\u72b6\u614b\u9077\u79fb\u8ffd\u8de1\u306b\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "csrfToken": {
                        "title": "\u51e6\u7406\u8b58\u5225\u5b50",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u306e\u507d\u9020\u3092\u9632\u3050\u305f\u3081\u306b\u9001\u4fe1\u5143\u753b\u9762\u3067\u767a\u884c\u3055\u308c\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "transitionId"
                ]
            },
            "POST/contactResponse": {
                "title": "POST /contact response",
                "description": "POST /contact response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "contactEmail": {
                        "title": "\u304a\u554f\u3044\u5408\u308f\u305b\u30e1\u30fc\u30eb",
                        "description": "\u304a\u554f\u3044\u5408\u308f\u305b\u30d5\u30a9\u30fc\u30e0\u306e\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "contactName02": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 255,
                        "title": "\u304a\u554f\u3044\u5408\u308f\u305b\u540d",
                        "description": "\u304a\u554f\u3044\u5408\u308f\u305b\u30d5\u30a9\u30fc\u30e0\u306e\u540d\u3002\u5185\u90e8\u7684\u306b\u306fNameType\u306ename02\u3068\u540c\u3058\u4ed5\u7d44\u307f"
                    },
                    "contactName01": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 255,
                        "title": "\u304a\u554f\u3044\u5408\u308f\u305b\u59d3",
                        "description": "\u304a\u554f\u3044\u5408\u308f\u305b\u30d5\u30a9\u30fc\u30e0\u306e\u59d3\u3002\u5185\u90e8\u7684\u306b\u306fNameType\u306ename01\u3068\u540c\u3058\u4ed5\u7d44\u307f"
                    },
                    "ticketId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u53d7\u4ed8\u756a\u53f7",
                        "description": "\u554f\u3044\u5408\u308f\u305b\u9001\u4fe1\u5f8c\u306b\u767a\u884c\u3055\u308c\u308b\u516c\u958b\u53d7\u4ed8\u756a\u53f7\u3002\u554f\u3044\u5408\u308f\u305b\u672c\u6587\u306e readback resource \u3067\u306f\u306a\u304f\u3001\u5b8c\u4e86\u72b6\u614b\u306e\u6210\u7acb\u8a3c\u62e0\u3068\u3057\u3066\u4f7f\u3046\u3002",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "contactEmail",
                    "contactName02",
                    "contactName01",
                    "ticketId"
                ]
            },
            "GET/entryResponse": {
                "title": "GET /entry response",
                "description": "GET /entry response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "form": {
                        "type": [
                            "object",
                            "array",
                            "null"
                        ],
                        "title": "\u5165\u529b\u30d5\u30a9\u30fc\u30e0",
                        "description": "Aura/WebForm\u7531\u6765\u306e\u30d5\u30a9\u30fc\u30e0\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3002\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5185\u90e8\u69cb\u9020\u306e\u305f\u3081schema\u3067\u306f\u5b58\u5728\u3068\u578b\u306e\u307f\u3092\u5951\u7d04\u3059\u308b\u3002",
                        "$comment": "Aura/WebForm\u7531\u6765\u306e\u4e0d\u900f\u660e\u30d5\u30a9\u30fc\u30e0\u8868\u73fe\u3002Resource\u5883\u754c\u3067\u306f\u30d5\u30a9\u30fc\u30e0\u306e\u5b58\u5728\u3068\u30b3\u30f3\u30c6\u30ad\u30b9\u30c8\u3060\u3051\u3092\u5951\u7d04\u3057\u3001\u5185\u90e8\u69cb\u9020\u306f\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5883\u754c\u306b\u59d4\u306d\u308b\u305f\u3081\u8ffd\u52a0\u30ad\u30fc\u5236\u7d04\u3092\u7f6e\u304b\u306a\u3044\u3002"
                    },
                    "fields": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u9759\u7684\u8868\u793a\u30d5\u30a3\u30fc\u30eb\u30c9",
                        "description": "/entry \u3067\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u3078\u6e21\u3059\u8868\u793a\u7528\u30d5\u30a3\u30fc\u30eb\u30c9\u96c6\u5408\u3002\u30d5\u30a9\u30fc\u30e0\u5165\u529b\u5024\u3067\u306f\u306a\u304f\u753b\u9762\u6587\u8108\u30c7\u30fc\u30bf\u3002",
                        "items": {
                            "type": "string",
                            "title": "\u8868\u793a\u30d5\u30a3\u30fc\u30eb\u30c9",
                            "minLength": 0,
                            "maxLength": 255,
                            "description": "/entry \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u4f1a\u54e1\u884c\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `fields` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002"
                        }
                    },
                    "submitTo": {
                        "type": [
                            "object",
                            "null"
                        ],
                        "title": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5148\u30ea\u30f3\u30af",
                        "description": "/entry \u306e\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u306b\u4f7f\u3046\u9001\u4fe1\u5148\u30ea\u30f3\u30af\u3002HTTP\u30e1\u30bd\u30c3\u30c9\u3068\u9077\u79fb\u5148\u3092\u307e\u3068\u3081\u3001unsafe\u64cd\u4f5c\u306e\u5165\u53e3\u3092\u660e\u793a\u3059\u308b\u3002",
                        "properties": {
                            "href": {
                                "title": "\u30ea\u30f3\u30afURI\u53c2\u7167\uff08URI\u53c2\u7167\uff09",
                                "description": "\u30da\u30fc\u30b8\u306eURL\u30d1\u30b9\uff08Symfony\u30eb\u30fc\u30c8\u540d\u3002\u4f8b: homepage, product_list\uff09",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "method": {
                                "type": [
                                    "string",
                                    "null"
                                ],
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ],
                                "title": "HTTP\u30e1\u30bd\u30c3\u30c9",
                                "description": "/entry \u306e\u30ea\u30f3\u30af\u307e\u305f\u306f\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u3067\u4f7f\u3046HTTP\u30e1\u30bd\u30c3\u30c9\u3002GET/POST\u7b49\u306e\u9077\u79fb\u65b9\u6cd5\u3092\u8868\u3059\u3002"
                            }
                        },
                        "additionalProperties": false,
                        "required": [
                            "href",
                            "method"
                        ]
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "\u3053\u306e\u30ec\u30b9\u30dd\u30f3\u30b9/\u64cd\u4f5c\u304c\u5bfe\u5fdc\u3059\u308bALPS\u9077\u79fbID\u3002\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u306e\u72b6\u614b\u9077\u79fb\u8ffd\u8de1\u306b\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "csrfToken": {
                        "title": "\u51e6\u7406\u8b58\u5225\u5b50",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u306e\u507d\u9020\u3092\u9632\u3050\u305f\u3081\u306b\u9001\u4fe1\u5143\u753b\u9762\u3067\u767a\u884c\u3055\u308c\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "transitionId"
                ]
            },
            "POST/entryResponse": {
                "title": "POST /entry response",
                "description": "POST /entry response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "name01": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 80,
                        "title": "\u59d3",
                        "description": "\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u30fb\u304a\u554f\u3044\u5408\u308f\u305b\u3067\u5171\u901a\u4f7f\u7528\u3055\u308c\u308b\u59d3 Fake\u89b3\u5bdf\u6587\u5b57\u9577 2\u301c2; \u89b3\u5bdf\u5024 '\u9234\u6728', '\u5c71\u7530', '\u4f50\u85e4', '\u9ad8\u6a4b', '\u9000\u4f1a'\u3002",
                        "example": "\u9234\u6728"
                    },
                    "customerId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u4f1a\u54e1ID",
                        "description": "dtb_customer.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e Entity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\uff08\u30de\u30b9\u30a2\u30b5\u30a4\u30f3\u30e1\u30f3\u30c8\u9632\u6b62\u306e\u305f\u3081\u3001Session/AuthZ \u7d4c\u7531\u3067\u8aad\u307f\u51fa\u3057\u3001\u30ea\u30af\u30a8\u30b9\u30c8\u672c\u6587\u304b\u3089\u306f\u53d7\u3051\u53d6\u3089\u306a\u3044\uff09\u3002Favorite / Cart / Order \u306e\u6240\u6709\u8005\u30ad\u30fc\u3068\u3057\u3066\u6a2a\u65ad\u4f7f\u7528 Fake\u89b3\u5bdf\u6587\u5b57\u9577 12\u301c32; \u89b3\u5bdf\u5024 'customer-001', '0123456789abcdef0123456789abcdef', 'customer-002', 'favorite-list-customer', 'favorite-html-customer', 'fedcba9876543210fedcba9876543210', 'aaaaaaaa00000000bbbbbbbb11111111', '10000000aaaa1111bbbb2222cccc3333'\u3002",
                        "example": "customer-001",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b Fake\u89b3\u5bdf\u6570\u5024 1\u301c2; \u89b3\u5bdf\u5024 '2', '1'\u3002",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u3002\u4f1a\u54e1\u767b\u9332\u30fb\u30ed\u30b0\u30a4\u30f3\u30fb\u901a\u77e5\u3067\u5171\u901a\u306b\u4f7f\u3046\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 15\u301c58; \u89b3\u5bdf\u5024 'bob@example.com', 'login-test@example.com', 'alice@example.com', 'carol@example.com', 'provisional@example.com', 'withdrawn-30000000aaaa3333bbbb4444cccc5555@example.invalid'\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "initialPoint": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 2147483647,
                        "title": "\u521d\u671f\u30dd\u30a4\u30f3\u30c8",
                        "description": "Fake\u89b3\u5bdf\u6570\u5024 100\u301c100; \u89b3\u5bdf\u5024 '100'\u3002",
                        "example": 100
                    },
                    "name02": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 80,
                        "title": "\u540d",
                        "description": "\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u30fb\u304a\u554f\u3044\u5408\u308f\u305b\u3067\u5171\u901a\u4f7f\u7528\u3055\u308c\u308b\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 1\u301c3; \u89b3\u5bdf\u5024 '\u30a2\u30ea\u30b9', '\u592a\u90ce', '\u6b21\u90ce', '\u82b1\u5b50', '\u4e09\u90ce', '\u6e08'\u3002",
                        "example": "\u30a2\u30ea\u30b9"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "name01",
                    "customerId",
                    "customerStatus",
                    "email",
                    "initialPoint",
                    "name02"
                ]
            },
            "GET/forgot-completeResponse": {
                "title": "GET /forgot-complete response",
                "description": "GET /forgot-complete response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "fields": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u9759\u7684\u8868\u793a\u30d5\u30a3\u30fc\u30eb\u30c9",
                        "description": "/forgot-complete \u3067\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u3078\u6e21\u3059\u8868\u793a\u7528\u30d5\u30a3\u30fc\u30eb\u30c9\u96c6\u5408\u3002\u30d5\u30a9\u30fc\u30e0\u5165\u529b\u5024\u3067\u306f\u306a\u304f\u753b\u9762\u6587\u8108\u30c7\u30fc\u30bf\u3002",
                        "items": {
                            "type": "string",
                            "title": "\u8868\u793a\u30d5\u30a3\u30fc\u30eb\u30c9",
                            "minLength": 0,
                            "maxLength": 255,
                            "description": "/forgot-complete \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u30d1\u30b9\u30ef\u30fc\u30c9\u518d\u8a2d\u5b9a\u884c\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `fields` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002"
                        }
                    },
                    "submitTo": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 255,
                        "title": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5148\u30ea\u30f3\u30af",
                        "description": "/forgot-complete \u306e\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u306b\u4f7f\u3046\u9001\u4fe1\u5148\u30ea\u30f3\u30af\u3002HTTP\u30e1\u30bd\u30c3\u30c9\u3068\u9077\u79fb\u5148\u3092\u307e\u3068\u3081\u3001unsafe\u64cd\u4f5c\u306e\u5165\u53e3\u3092\u660e\u793a\u3059\u308b\u3002"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "\u3053\u306e\u30ec\u30b9\u30dd\u30f3\u30b9/\u64cd\u4f5c\u304c\u5bfe\u5fdc\u3059\u308bALPS\u9077\u79fbID\u3002\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u306e\u72b6\u614b\u9077\u79fb\u8ffd\u8de1\u306b\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "transitionId"
                ]
            },
            "GET/forgot-passwordResponse": {
                "title": "GET /forgot-password response",
                "description": "GET /forgot-password response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "form": {
                        "type": [
                            "object",
                            "array",
                            "null"
                        ],
                        "title": "\u5165\u529b\u30d5\u30a9\u30fc\u30e0",
                        "description": "Aura/WebForm\u7531\u6765\u306e\u30d5\u30a9\u30fc\u30e0\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3002\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5185\u90e8\u69cb\u9020\u306e\u305f\u3081schema\u3067\u306f\u5b58\u5728\u3068\u578b\u306e\u307f\u3092\u5951\u7d04\u3059\u308b\u3002",
                        "$comment": "Aura/WebForm\u7531\u6765\u306e\u4e0d\u900f\u660e\u30d5\u30a9\u30fc\u30e0\u8868\u73fe\u3002Resource\u5883\u754c\u3067\u306f\u30d5\u30a9\u30fc\u30e0\u306e\u5b58\u5728\u3068\u30b3\u30f3\u30c6\u30ad\u30b9\u30c8\u3060\u3051\u3092\u5951\u7d04\u3057\u3001\u5185\u90e8\u69cb\u9020\u306f\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5883\u754c\u306b\u59d4\u306d\u308b\u305f\u3081\u8ffd\u52a0\u30ad\u30fc\u5236\u7d04\u3092\u7f6e\u304b\u306a\u3044\u3002"
                    },
                    "fields": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u9759\u7684\u8868\u793a\u30d5\u30a3\u30fc\u30eb\u30c9",
                        "description": "/forgot-password \u3067\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u3078\u6e21\u3059\u8868\u793a\u7528\u30d5\u30a3\u30fc\u30eb\u30c9\u96c6\u5408\u3002\u30d5\u30a9\u30fc\u30e0\u5165\u529b\u5024\u3067\u306f\u306a\u304f\u753b\u9762\u6587\u8108\u30c7\u30fc\u30bf\u3002",
                        "items": {
                            "type": "string",
                            "title": "\u8868\u793a\u30d5\u30a3\u30fc\u30eb\u30c9",
                            "minLength": 0,
                            "maxLength": 255,
                            "description": "/forgot-password \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u30d1\u30b9\u30ef\u30fc\u30c9\u518d\u8a2d\u5b9a\u884c\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `fields` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002"
                        }
                    },
                    "submitTo": {
                        "type": [
                            "object",
                            "null"
                        ],
                        "title": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5148\u30ea\u30f3\u30af",
                        "description": "/forgot-password \u306e\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u306b\u4f7f\u3046\u9001\u4fe1\u5148\u30ea\u30f3\u30af\u3002HTTP\u30e1\u30bd\u30c3\u30c9\u3068\u9077\u79fb\u5148\u3092\u307e\u3068\u3081\u3001unsafe\u64cd\u4f5c\u306e\u5165\u53e3\u3092\u660e\u793a\u3059\u308b\u3002",
                        "properties": {
                            "href": {
                                "title": "\u30ea\u30f3\u30afURI\u53c2\u7167\uff08URI\u53c2\u7167\uff09",
                                "description": "\u30da\u30fc\u30b8\u306eURL\u30d1\u30b9\uff08Symfony\u30eb\u30fc\u30c8\u540d\u3002\u4f8b: homepage, product_list\uff09",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "method": {
                                "type": [
                                    "string",
                                    "null"
                                ],
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ],
                                "title": "HTTP\u30e1\u30bd\u30c3\u30c9",
                                "description": "/forgot-password \u306e\u30ea\u30f3\u30af\u307e\u305f\u306f\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u3067\u4f7f\u3046HTTP\u30e1\u30bd\u30c3\u30c9\u3002GET/POST\u7b49\u306e\u9077\u79fb\u65b9\u6cd5\u3092\u8868\u3059\u3002"
                            }
                        },
                        "additionalProperties": false,
                        "required": [
                            "href",
                            "method"
                        ]
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "\u3053\u306e\u30ec\u30b9\u30dd\u30f3\u30b9/\u64cd\u4f5c\u304c\u5bfe\u5fdc\u3059\u308bALPS\u9077\u79fbID\u3002\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u306e\u72b6\u614b\u9077\u79fb\u8ffd\u8de1\u306b\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "csrfToken": {
                        "title": "\u51e6\u7406\u8b58\u5225\u5b50",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u306e\u507d\u9020\u3092\u9632\u3050\u305f\u3081\u306b\u9001\u4fe1\u5143\u753b\u9762\u3067\u767a\u884c\u3055\u308c\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "transitionId",
                    "csrfToken"
                ]
            },
            "POST/forgot-passwordResponse": {
                "title": "POST /forgot-password response",
                "description": "POST /forgot-password response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "message": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u30d1\u30b9\u30ef\u30fc\u30c9\u518d\u8a2d\u5b9a\u30e1\u30c3\u30bb\u30fc\u30b8",
                        "description": "/forgot-password \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u51e6\u7406\u7d50\u679c\u30e1\u30c3\u30bb\u30fc\u30b8\u3002\u6ce8\u6587\u6642\u304a\u554f\u3044\u5408\u308f\u305b\u6b04\u3067\u306f\u306a\u304f\u3001\u753b\u9762\u9077\u79fb\u3084\u5b8c\u4e86\u8868\u793a\u306e\u305f\u3081\u306e\u901a\u77e5\u6587\u3002",
                        "example": "\u914d\u9001\u306f\u5e73\u65e5\u5e0c\u671b\u3067\u3059\u3002"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape."
            },
            "GET/indexResponse": {
                "title": "GET /index response",
                "description": "GET /index response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "fields": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u9759\u7684\u8868\u793a\u30d5\u30a3\u30fc\u30eb\u30c9",
                        "description": "/index \u3067\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u3078\u6e21\u3059\u8868\u793a\u7528\u30d5\u30a3\u30fc\u30eb\u30c9\u96c6\u5408\u3002\u30d5\u30a9\u30fc\u30e0\u5165\u529b\u5024\u3067\u306f\u306a\u304f\u753b\u9762\u6587\u8108\u30c7\u30fc\u30bf\u3002",
                        "items": {
                            "type": "string",
                            "title": "\u8868\u793a\u30d5\u30a3\u30fc\u30eb\u30c9",
                            "minLength": 0,
                            "maxLength": 255,
                            "description": "/index \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u51e6\u7406\u884c\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `fields` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002"
                        }
                    },
                    "submitTo": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 255,
                        "title": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5148\u30ea\u30f3\u30af",
                        "description": "/index \u306e\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u306b\u4f7f\u3046\u9001\u4fe1\u5148\u30ea\u30f3\u30af\u3002HTTP\u30e1\u30bd\u30c3\u30c9\u3068\u9077\u79fb\u5148\u3092\u307e\u3068\u3081\u3001unsafe\u64cd\u4f5c\u306e\u5165\u53e3\u3092\u660e\u793a\u3059\u308b\u3002"
                    },
                    "staticContent": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 255,
                        "title": "\u9759\u7684\u30b3\u30f3\u30c6\u30f3\u30c4",
                        "description": "/index \u3067\u8868\u793a\u3059\u308b\u898f\u7d04\u30fb\u30d8\u30eb\u30d7\u30fb\u30a8\u30e9\u30fc\u7b49\u306e\u9759\u7684\u30da\u30fc\u30b8\u672c\u6587\u3068\u30bb\u30af\u30b7\u30e7\u30f3\u60c5\u5831\u3002"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "\u3053\u306e\u30ec\u30b9\u30dd\u30f3\u30b9/\u64cd\u4f5c\u304c\u5bfe\u5fdc\u3059\u308bALPS\u9077\u79fbID\u3002\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u306e\u72b6\u614b\u9077\u79fb\u8ffd\u8de1\u306b\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "transitionId"
                ]
            },
            "GET/loginResponse": {
                "title": "GET /login response",
                "description": "GET /login response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "form": {
                        "type": [
                            "object",
                            "array",
                            "null"
                        ],
                        "title": "\u5165\u529b\u30d5\u30a9\u30fc\u30e0",
                        "description": "Aura/WebForm\u7531\u6765\u306e\u30d5\u30a9\u30fc\u30e0\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3002\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5185\u90e8\u69cb\u9020\u306e\u305f\u3081schema\u3067\u306f\u5b58\u5728\u3068\u578b\u306e\u307f\u3092\u5951\u7d04\u3059\u308b\u3002",
                        "$comment": "Aura/WebForm\u7531\u6765\u306e\u4e0d\u900f\u660e\u30d5\u30a9\u30fc\u30e0\u8868\u73fe\u3002Resource\u5883\u754c\u3067\u306f\u30d5\u30a9\u30fc\u30e0\u306e\u5b58\u5728\u3068\u30b3\u30f3\u30c6\u30ad\u30b9\u30c8\u3060\u3051\u3092\u5951\u7d04\u3057\u3001\u5185\u90e8\u69cb\u9020\u306f\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5883\u754c\u306b\u59d4\u306d\u308b\u305f\u3081\u8ffd\u52a0\u30ad\u30fc\u5236\u7d04\u3092\u7f6e\u304b\u306a\u3044\u3002"
                    },
                    "fields": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u9759\u7684\u8868\u793a\u30d5\u30a3\u30fc\u30eb\u30c9",
                        "description": "/login \u3067\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u3078\u6e21\u3059\u8868\u793a\u7528\u30d5\u30a3\u30fc\u30eb\u30c9\u96c6\u5408\u3002\u30d5\u30a9\u30fc\u30e0\u5165\u529b\u5024\u3067\u306f\u306a\u304f\u753b\u9762\u6587\u8108\u30c7\u30fc\u30bf\u3002",
                        "items": {
                            "type": "string",
                            "title": "\u8868\u793a\u30d5\u30a3\u30fc\u30eb\u30c9",
                            "minLength": 0,
                            "maxLength": 255,
                            "description": "/login \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u51e6\u7406\u884c\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `fields` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002"
                        }
                    },
                    "submitTo": {
                        "type": [
                            "object",
                            "null"
                        ],
                        "title": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5148\u30ea\u30f3\u30af",
                        "description": "/login \u306e\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u306b\u4f7f\u3046\u9001\u4fe1\u5148\u30ea\u30f3\u30af\u3002HTTP\u30e1\u30bd\u30c3\u30c9\u3068\u9077\u79fb\u5148\u3092\u307e\u3068\u3081\u3001unsafe\u64cd\u4f5c\u306e\u5165\u53e3\u3092\u660e\u793a\u3059\u308b\u3002",
                        "properties": {
                            "href": {
                                "title": "\u30ea\u30f3\u30afURI\u53c2\u7167\uff08URI\u53c2\u7167\uff09",
                                "description": "\u30da\u30fc\u30b8\u306eURL\u30d1\u30b9\uff08Symfony\u30eb\u30fc\u30c8\u540d\u3002\u4f8b: homepage, product_list\uff09",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "method": {
                                "type": [
                                    "string",
                                    "null"
                                ],
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ],
                                "title": "HTTP\u30e1\u30bd\u30c3\u30c9",
                                "description": "/login \u306e\u30ea\u30f3\u30af\u307e\u305f\u306f\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u3067\u4f7f\u3046HTTP\u30e1\u30bd\u30c3\u30c9\u3002GET/POST\u7b49\u306e\u9077\u79fb\u65b9\u6cd5\u3092\u8868\u3059\u3002"
                            }
                        },
                        "additionalProperties": false,
                        "required": [
                            "href",
                            "method"
                        ]
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "\u3053\u306e\u30ec\u30b9\u30dd\u30f3\u30b9/\u64cd\u4f5c\u304c\u5bfe\u5fdc\u3059\u308bALPS\u9077\u79fbID\u3002\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u306e\u72b6\u614b\u9077\u79fb\u8ffd\u8de1\u306b\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "csrfToken": {
                        "title": "\u51e6\u7406\u8b58\u5225\u5b50",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u306e\u507d\u9020\u3092\u9632\u3050\u305f\u3081\u306b\u9001\u4fe1\u5143\u753b\u9762\u3067\u767a\u884c\u3055\u308c\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "transitionId"
                ]
            },
            "POST/loginResponse": {
                "title": "POST /login response",
                "description": "POST /login response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "name01": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 80,
                        "title": "\u59d3",
                        "description": "\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u30fb\u304a\u554f\u3044\u5408\u308f\u305b\u3067\u5171\u901a\u4f7f\u7528\u3055\u308c\u308b\u59d3 Fake\u89b3\u5bdf\u6587\u5b57\u9577 2\u301c2; \u89b3\u5bdf\u5024 '\u9234\u6728', '\u5c71\u7530', '\u4f50\u85e4', '\u9ad8\u6a4b', '\u9000\u4f1a'\u3002",
                        "example": "\u9234\u6728"
                    },
                    "customerId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u4f1a\u54e1ID",
                        "description": "dtb_customer.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e Entity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\uff08\u30de\u30b9\u30a2\u30b5\u30a4\u30f3\u30e1\u30f3\u30c8\u9632\u6b62\u306e\u305f\u3081\u3001Session/AuthZ \u7d4c\u7531\u3067\u8aad\u307f\u51fa\u3057\u3001\u30ea\u30af\u30a8\u30b9\u30c8\u672c\u6587\u304b\u3089\u306f\u53d7\u3051\u53d6\u3089\u306a\u3044\uff09\u3002Favorite / Cart / Order \u306e\u6240\u6709\u8005\u30ad\u30fc\u3068\u3057\u3066\u6a2a\u65ad\u4f7f\u7528 Fake\u89b3\u5bdf\u6587\u5b57\u9577 12\u301c32; \u89b3\u5bdf\u5024 'customer-001', '0123456789abcdef0123456789abcdef', 'customer-002', 'favorite-list-customer', 'favorite-html-customer', 'fedcba9876543210fedcba9876543210', 'aaaaaaaa00000000bbbbbbbb11111111', '10000000aaaa1111bbbb2222cccc3333'\u3002",
                        "example": "customer-001",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b Fake\u89b3\u5bdf\u6570\u5024 1\u301c2; \u89b3\u5bdf\u5024 '2', '1'\u3002",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u3002\u4f1a\u54e1\u767b\u9332\u30fb\u30ed\u30b0\u30a4\u30f3\u30fb\u901a\u77e5\u3067\u5171\u901a\u306b\u4f7f\u3046\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 15\u301c58; \u89b3\u5bdf\u5024 'bob@example.com', 'login-test@example.com', 'alice@example.com', 'carol@example.com', 'provisional@example.com', 'withdrawn-30000000aaaa3333bbbb4444cccc5555@example.invalid'\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "name02": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 80,
                        "title": "\u540d",
                        "description": "\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u30fb\u304a\u554f\u3044\u5408\u308f\u305b\u3067\u5171\u901a\u4f7f\u7528\u3055\u308c\u308b\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 1\u301c3; \u89b3\u5bdf\u5024 '\u30a2\u30ea\u30b9', '\u592a\u90ce', '\u6b21\u90ce', '\u82b1\u5b50', '\u4e09\u90ce', '\u6e08'\u3002",
                        "example": "\u30a2\u30ea\u30b9"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "name01",
                    "customerId",
                    "customerStatus",
                    "email",
                    "name02"
                ]
            },
            "POST/logoutResponse": {
                "title": "POST /logout response",
                "description": "POST /logout response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "message": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u51e6\u7406\u30e1\u30c3\u30bb\u30fc\u30b8",
                        "description": "/logout \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u51e6\u7406\u7d50\u679c\u30e1\u30c3\u30bb\u30fc\u30b8\u3002\u6ce8\u6587\u6642\u304a\u554f\u3044\u5408\u308f\u305b\u6b04\u3067\u306f\u306a\u304f\u3001\u753b\u9762\u9077\u79fb\u3084\u5b8c\u4e86\u8868\u793a\u306e\u305f\u3081\u306e\u901a\u77e5\u6587\u3002",
                        "example": "\u914d\u9001\u306f\u5e73\u65e5\u5e0c\u671b\u3067\u3059\u3002"
                    },
                    "wasLoggedIn": {
                        "type": [
                            "boolean",
                            "null"
                        ],
                        "title": "\u30ed\u30b0\u30a4\u30f3\u6e08\u307f\u7d50\u679c",
                        "description": "/logout \u306e\u51e6\u7406\u72b6\u614b\u3092\u793a\u3059\u30ed\u30b0\u30a4\u30f3\u6e08\u307f\u7d50\u679c\u3002\u753b\u9762\u8868\u793a\u3084\u51aa\u7b49\u51e6\u7406\u7d50\u679c\u306e\u5206\u5c90\u306b\u4f7f\u3046\u771f\u507d\u5024\u3002"
                    },
                    "customerId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u4f1a\u54e1ID",
                        "description": "dtb_customer.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e Entity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\uff08\u30de\u30b9\u30a2\u30b5\u30a4\u30f3\u30e1\u30f3\u30c8\u9632\u6b62\u306e\u305f\u3081\u3001Session/AuthZ \u7d4c\u7531\u3067\u8aad\u307f\u51fa\u3057\u3001\u30ea\u30af\u30a8\u30b9\u30c8\u672c\u6587\u304b\u3089\u306f\u53d7\u3051\u53d6\u3089\u306a\u3044\uff09\u3002Favorite / Cart / Order \u306e\u6240\u6709\u8005\u30ad\u30fc\u3068\u3057\u3066\u6a2a\u65ad\u4f7f\u7528 Fake\u89b3\u5bdf\u6587\u5b57\u9577 12\u301c32; \u89b3\u5bdf\u5024 'customer-001', '0123456789abcdef0123456789abcdef', 'customer-002', 'favorite-list-customer', 'favorite-html-customer', 'fedcba9876543210fedcba9876543210', 'aaaaaaaa00000000bbbbbbbb11111111', '10000000aaaa1111bbbb2222cccc3333'\u3002",
                        "example": "customer-001",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "wasLoggedIn",
                    "customerId"
                ]
            },
            "GET/mypageResponse": {
                "title": "GET /mypage response",
                "description": "GET /mypage response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "name01": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 80,
                        "title": "\u59d3",
                        "description": "\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u30fb\u304a\u554f\u3044\u5408\u308f\u305b\u3067\u5171\u901a\u4f7f\u7528\u3055\u308c\u308b\u59d3 Fake\u89b3\u5bdf\u6587\u5b57\u9577 2\u301c2; \u89b3\u5bdf\u5024 '\u9234\u6728', '\u5c71\u7530', '\u4f50\u85e4', '\u9ad8\u6a4b', '\u9000\u4f1a'\u3002",
                        "example": "\u9234\u6728"
                    },
                    "customerId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u4f1a\u54e1ID",
                        "description": "dtb_customer.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e Entity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\uff08\u30de\u30b9\u30a2\u30b5\u30a4\u30f3\u30e1\u30f3\u30c8\u9632\u6b62\u306e\u305f\u3081\u3001Session/AuthZ \u7d4c\u7531\u3067\u8aad\u307f\u51fa\u3057\u3001\u30ea\u30af\u30a8\u30b9\u30c8\u672c\u6587\u304b\u3089\u306f\u53d7\u3051\u53d6\u3089\u306a\u3044\uff09\u3002Favorite / Cart / Order \u306e\u6240\u6709\u8005\u30ad\u30fc\u3068\u3057\u3066\u6a2a\u65ad\u4f7f\u7528 Fake\u89b3\u5bdf\u6587\u5b57\u9577 12\u301c32; \u89b3\u5bdf\u5024 'customer-001', '0123456789abcdef0123456789abcdef', 'customer-002', 'favorite-list-customer', 'favorite-html-customer', 'fedcba9876543210fedcba9876543210', 'aaaaaaaa00000000bbbbbbbb11111111', '10000000aaaa1111bbbb2222cccc3333'\u3002",
                        "example": "customer-001",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    },
                    "recentOrders": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u6700\u8fd1\u306e\u6ce8\u6587\u4e00\u89a7",
                        "description": "/mypage \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u6700\u8fd1\u306e\u6ce8\u6587\u4e00\u89a7\u3002\u914d\u5217\u8981\u7d20\u306fALPS\u610f\u5473\u3068Fake\u89b3\u5bdf\u306b\u57fa\u3065\u304d\u3001\u56fa\u5b9a\u3067\u304d\u306a\u3044\u52d5\u7684\u5217\u306f\u4f8b\u5916\u7406\u7531\u3092\u53f0\u5e33\u5316\u3059\u308b\u3002",
                        "items": {
                            "type": "object",
                            "title": "\u6700\u8fd1\u306e\u6ce8\u6587",
                            "description": "/mypage \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u6700\u8fd1\u306e\u6ce8\u6587\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `recentOrders` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002",
                            "properties": {
                                "orderNo": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 64,
                                    "title": "\u6ce8\u6587\u756a\u53f7",
                                    "description": "\u9867\u5ba2\u5411\u3051\u306e\u6ce8\u6587\u756a\u53f7\u3002\u30d5\u30a9\u30fc\u30de\u30c3\u30c8\u306f\u30ab\u30b9\u30bf\u30de\u30a4\u30ba\u53ef\u80fd Fake\u89b3\u5bdf\u6587\u5b57\u9577 32\u301c32; \u89b3\u5bdf\u5024 'past0000000000000000000000000001'\u3002",
                                    "example": "past0000000000000000000000000001"
                                },
                                "orderStatus": {
                                    "title": "\u53d7\u6ce8\u30b9\u30c6\u30fc\u30bf\u30b9",
                                    "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 Fake\u89b3\u5bdf\u6570\u5024 1\u301c1; \u89b3\u5bdf\u5024 '1'\u3002",
                                    "type": [
                                        "integer",
                                        "null"
                                    ],
                                    "minimum": 1,
                                    "maximum": 9,
                                    "example": 1
                                },
                                "orderDate": {
                                    "title": "\u6ce8\u6587\u65e5",
                                    "description": "\u6ce8\u6587\u78ba\u5b9a\u65e5\u6642 Fake\u89b3\u5bdf\u6587\u5b57\u9577 19\u301c19; \u89b3\u5bdf\u5024 '2026-04-01 10:00:00'\u3002",
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "example": "2026-04-01 10:00:00",
                                    "pattern": "^\\d{4}-\\d{2}-\\d{2}([ T]\\d{2}:\\d{2}:\\d{2}([+-]\\d{2}:?\\d{2}|Z)?)?$"
                                },
                                "paymentTotal": {
                                    "type": [
                                        "integer",
                                        "null"
                                    ],
                                    "title": "\u652f\u6255\u5408\u8a08",
                                    "description": "\u5b9f\u969b\u306e\u652f\u6255\u91d1\u984d\u3002\u521d\u671f\u5024\u306ftotal\u3068\u540c\u5024\u3067\u3001PointProcessor\u304c\u30dd\u30a4\u30f3\u30c8\u5024\u5f15\u304d\u306eOrderItem\uff08type=POINT_DISCOUNT\u3001\u4e0d\u8ab2\u7a0e\uff09\u3092\u8ffd\u52a0\u5f8c\u306bPurchaseFlow.calculateTotal()\u3067\u518d\u8a08\u7b97\u3055\u308c\u308b\u3002\u8a08\u7b97\u5f0f: total - (\u5229\u7528\u30dd\u30a4\u30f3\u30c8 x pointConversionRate) Fake\u89b3\u5bdf\u6570\u5024 12700\u301c12700; \u89b3\u5bdf\u5024 '12700'\u3002",
                                    "example": 12700,
                                    "minimum": 0,
                                    "maximum": 999999999
                                },
                                "total": {
                                    "type": [
                                        "integer",
                                        "null"
                                    ],
                                    "title": "\u53d7\u6ce8\u5408\u8a08",
                                    "description": "\u53d7\u6ce8\u5408\u8a08\u91d1\u984d\u3002\u8a08\u7b97\u5f0f: subtotal(\u5546\u54c1\u7a0e\u8fbc\u5408\u8a08) + deliveryFeeTotal(\u9001\u6599) + charge(\u624b\u6570\u6599) - discount(\u5024\u5f15\u304d)\u3002\u30ab\u30fc\u30c8\u306etotalPrice\u3068\u306f\u5225\u30d7\u30ed\u30d1\u30c6\u30a3 Fake\u89b3\u5bdf\u6570\u5024 12700\u301c12700; \u89b3\u5bdf\u5024 '12700'\u3002",
                                    "example": 12700,
                                    "minimum": 0,
                                    "maximum": 999999999
                                },
                                "itemCount": {
                                    "type": [
                                        "integer",
                                        "null"
                                    ],
                                    "minimum": 0,
                                    "maximum": 10000,
                                    "title": "\u660e\u7d30\u4ef6\u6570",
                                    "description": "/mypage \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8fd4\u3059\u660e\u7d30\u4ef6\u6570\u3002\u4e00\u89a7\u30fb\u96c6\u8a08\u30fb\u51e6\u7406\u7d50\u679c\u306e\u898f\u6a21\u3092\u8868\u3059\u975e\u8ca0\u6574\u6570\u3002",
                                    "example": 1
                                },
                                "items": {
                                    "type": [
                                        "array",
                                        "null"
                                    ],
                                    "title": "\u6ce8\u6587\u5546\u54c1\u4e00\u89a7",
                                    "description": "/mypage \u306e\u6700\u8fd1\u306e\u6ce8\u6587\u3067\u8868\u793a\u3059\u308b\u5546\u54c1\u660e\u7d30\u30b9\u30ca\u30c3\u30d7\u30b7\u30e7\u30c3\u30c8\u3002\u6ce8\u6587\u5c65\u6b74\u8a73\u7d30\u3068\u540c\u3058\u304f\u3001\u6ce8\u6587\u6642\u70b9\u306e\u5546\u54c1\u30b3\u30fc\u30c9\u30fb\u5546\u54c1\u540d\u30fb\u6570\u91cf\u30fb\u5358\u4fa1\u3092\u8fd4\u3059\u3002",
                                    "items": {
                                        "type": "object",
                                        "title": "\u6ce8\u6587\u5546\u54c1",
                                        "properties": {
                                            "productCode": {
                                                "type": "string",
                                                "minLength": 0,
                                                "maxLength": 64,
                                                "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                                                "description": "SKU/\u54c1\u756a\u3002EC-CUBE \u306e dtb_order_item.product_code \u306f NULL \u8a31\u5bb9\uff08\u5546\u54c1\u524a\u9664\u5f8c\u306f\u7a7a\u306b\u306a\u308b\uff09\u305f\u3081\u3001\u660e\u7d30\u30b9\u30ca\u30c3\u30d7\u30b7\u30e7\u30c3\u30c8\u3067\u306f\u7a7a\u6587\u5b57\u3092\u8a31\u53ef\u3059\u308b\u3002",
                                                "example": "sample-001"
                                            },
                                            "productName": {
                                                "type": "string",
                                                "minLength": 0,
                                                "maxLength": 128,
                                                "title": "\u5546\u54c1\u540d",
                                                "description": "\u5546\u54c1\u306e\u8868\u793a\u540d\u3002\u6ce8\u6587\u6642\u70b9\u306e\u660e\u7d30\u30b9\u30ca\u30c3\u30d7\u30b7\u30e7\u30c3\u30c8\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002",
                                                "example": "\u30b5\u30f3\u30d7\u30eb\u5546\u54c1 A"
                                            },
                                            "quantity": {
                                                "$ref": "#/$defs/quantity"
                                            },
                                            "unitPrice": {
                                                "$ref": "#/$defs/price"
                                            }
                                        },
                                        "required": [
                                            "productCode",
                                            "productName",
                                            "quantity",
                                            "unitPrice"
                                        ],
                                        "additionalProperties": false
                                    },
                                    "minItems": 0
                                }
                            },
                            "additionalProperties": false,
                            "$comment": "\u914d\u5217\u8981\u7d20\u306fFake/Resource\u3067\u89b3\u5bdf\u3055\u308c\u305f\u65e2\u77e5property\u306b\u56fa\u5b9a\u3059\u308b\u3002\u65b0\u3057\u3044\u5217\u304c\u5fc5\u8981\u306b\u306a\u3063\u305f\u5834\u5408\u306fSemantic-Ex\u89b3\u5bdf\u306b\u8ffd\u52a0\u3057\u3066schema\u3092\u66f4\u65b0\u3059\u308b\u3002"
                        },
                        "minItems": 0
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u3002\u4f1a\u54e1\u767b\u9332\u30fb\u30ed\u30b0\u30a4\u30f3\u30fb\u901a\u77e5\u3067\u5171\u901a\u306b\u4f7f\u3046\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 15\u301c58; \u89b3\u5bdf\u5024 'bob@example.com', 'login-test@example.com', 'alice@example.com', 'carol@example.com', 'provisional@example.com', 'withdrawn-30000000aaaa3333bbbb4444cccc5555@example.invalid'\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "favoriteCount": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 2147483647,
                        "title": "\u304a\u6c17\u306b\u5165\u308a\u4ef6\u6570",
                        "description": "/mypage \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8fd4\u3059\u304a\u6c17\u306b\u5165\u308a\u4ef6\u6570\u3002\u4e00\u89a7\u30fb\u96c6\u8a08\u30fb\u51e6\u7406\u7d50\u679c\u306e\u898f\u6a21\u3092\u8868\u3059\u975e\u8ca0\u6574\u6570\u3002"
                    },
                    "recentOrderCount": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 2147483647,
                        "title": "\u6700\u8fd1\u306e\u6ce8\u6587\u4ef6\u6570",
                        "description": "/mypage \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8fd4\u3059\u6700\u8fd1\u306e\u6ce8\u6587\u4ef6\u6570\u3002\u4e00\u89a7\u30fb\u96c6\u8a08\u30fb\u51e6\u7406\u7d50\u679c\u306e\u898f\u6a21\u3092\u8868\u3059\u975e\u8ca0\u6574\u6570\u3002"
                    },
                    "name02": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 80,
                        "title": "\u540d",
                        "description": "\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u30fb\u304a\u554f\u3044\u5408\u308f\u305b\u3067\u5171\u901a\u4f7f\u7528\u3055\u308c\u308b\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 1\u301c3; \u89b3\u5bdf\u5024 '\u30a2\u30ea\u30b9', '\u592a\u90ce', '\u6b21\u90ce', '\u82b1\u5b50', '\u4e09\u90ce', '\u6e08'\u3002",
                        "example": "\u30a2\u30ea\u30b9"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "name01",
                    "customerId",
                    "recentOrders",
                    "email",
                    "favoriteCount",
                    "recentOrderCount",
                    "name02"
                ]
            },
            "GET/productResponse": {
                "title": "GET /product response",
                "description": "GET /product response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "form": {
                        "type": [
                            "object",
                            "array",
                            "null"
                        ],
                        "title": "\u5165\u529b\u30d5\u30a9\u30fc\u30e0",
                        "description": "Aura/WebForm\u7531\u6765\u306e\u30d5\u30a9\u30fc\u30e0\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3002\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5185\u90e8\u69cb\u9020\u306e\u305f\u3081schema\u3067\u306f\u5b58\u5728\u3068\u578b\u306e\u307f\u3092\u5951\u7d04\u3059\u308b\u3002",
                        "$comment": "Aura/WebForm\u7531\u6765\u306e\u4e0d\u900f\u660e\u30d5\u30a9\u30fc\u30e0\u8868\u73fe\u3002Resource\u5883\u754c\u3067\u306f\u30d5\u30a9\u30fc\u30e0\u306e\u5b58\u5728\u3068\u30b3\u30f3\u30c6\u30ad\u30b9\u30c8\u3060\u3051\u3092\u5951\u7d04\u3057\u3001\u5185\u90e8\u69cb\u9020\u306f\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5883\u754c\u306b\u59d4\u306d\u308b\u305f\u3081\u8ffd\u52a0\u30ad\u30fc\u5236\u7d04\u3092\u7f6e\u304b\u306a\u3044\u3002"
                    },
                    "stock": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 2147483647,
                        "title": "\u5728\u5eab\u6570",
                        "description": "\u7269\u7406\u5728\u5eab\u6570\u3002stockUnlimited=true\u306e\u5834\u5408\u306f\u7121\u8996\u3055\u308c\u308b\u3002\u6ce8\u6587\u78ba\u5b9a\u6642\u306b\u5f15\u304d\u5f53\u3066\u304c\u884c\u308f\u308c\u308b Fake\u89b3\u5bdf\u6570\u5024 0\u301c100; \u89b3\u5bdf\u5024 '0', '10', '20', '50', '5', '7', '100', '3'; null 9/73\u3002",
                        "example": 0
                    },
                    "productName": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "title": "\u5546\u54c1\u540d",
                        "description": "\u5546\u54c1\u306e\u8868\u793a\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 6\u301c17\u3002",
                        "example": "\u30b5\u30f3\u30d7\u30eb\u5546\u54c1 A"
                    },
                    "description": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "title": "\u8a73\u7d30\u8aac\u660e\u6587",
                        "description": "\u5546\u54c1\u8a73\u7d30\u30da\u30fc\u30b8\u306b\u8868\u793a\u3059\u308b\u8aac\u660e\u6587 Fake\u89b3\u5bdf\u6587\u5b57\u9577 12\u301c32; \u89b3\u5bdf\u5024 'Stock-unlimited fixture', 'Wave 8 admin grid: visible row', 'Wave 8 admin grid: hidden row', 'Wave 8 admin grid: withdrawn row', '\u7ba1\u7406\u753b\u9762\u304b\u3089\u540d\u79f0\u5909\u66f4\u3057\u305f\u3001\u5f69\u308a\u8c4a\u304b\u306a\u30b8\u30a7\u30e9\u30fc\u30c8\u30bb\u30c3\u30c8\u3067\u3059\u3002', '\u7ba1\u7406\u753b\u9762\u304b\u3089\u4f5c\u6210\u3057\u305f\u5546\u54c1'; null 1/7\u3002",
                        "example": "Stock-unlimited fixture"
                    },
                    "classNames": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u898f\u683c\u540d\u4e00\u89a7",
                        "description": "Fake\u89b3\u5bdf\u6570\u5024 0\u301c1\u3002",
                        "items": {
                            "type": "string",
                            "title": "\u898f\u683c\u540d",
                            "minLength": 0,
                            "maxLength": 128,
                            "description": "/product \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u898f\u683c\u540d\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `classNames` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002"
                        },
                        "minItems": 0
                    },
                    "price02": {
                        "title": "\u8ca9\u58f2\u4fa1\u683c",
                        "description": "\u5b9f\u969b\u306e\u8ca9\u58f2\u4fa1\u683c\uff08\u7a0e\u629c\uff09\u3002\u7a0e\u8a08\u7b97\u30fb\u5c0f\u8a08\u8a08\u7b97\u306e\u30d9\u30fc\u30b9 Fake\u89b3\u5bdf\u6570\u5024 800\u301c28000\u3002",
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 3500
                    },
                    "mainImage": {
                        "title": "\u30e1\u30a4\u30f3\u753b\u50cfURI",
                        "description": "/product \u306e\u753b\u9762\u8868\u793a\u306b\u4f7f\u3046\u30e1\u30a4\u30f3\u753b\u50cfURI\u3002\u696d\u52d9\u30a8\u30f3\u30c6\u30a3\u30c6\u30a3\u305d\u306e\u3082\u306e\u3067\u306f\u306a\u304f\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8/\u4e00\u89a7\u8868\u793a\u306e\u88dc\u52a9\u5024\u3002",
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "tagNames": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u30bf\u30b0\u540d\u4e00\u89a7",
                        "description": "Fake\u89b3\u5bdf\u6570\u5024 0\u301c2\u3002",
                        "items": {
                            "type": "string",
                            "title": "\u30bf\u30b0\u540d",
                            "minLength": 0,
                            "maxLength": 128,
                            "description": "/product \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u5546\u54c1\u884c\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `tagNames` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002"
                        },
                        "minItems": 0
                    },
                    "categoryNames": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u30ab\u30c6\u30b4\u30ea\u540d\u4e00\u89a7",
                        "description": "Fake\u89b3\u5bdf\u6570\u5024 0\u301c4\u3002",
                        "items": {
                            "type": "string",
                            "title": "\u30ab\u30c6\u30b4\u30ea\u540d",
                            "minLength": 0,
                            "maxLength": 128,
                            "description": "/product \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u5546\u54c1\u884c\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `categoryNames` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002"
                        },
                        "minItems": 0
                    },
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 \u5546\u54c1\u3092\u8b58\u5225\u3059\u308bSKU\u3002Fake corpus\u3067\u306fASCII\u82f1\u6570\u30fb\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3067\u3001\u53d7\u6ce8\u660e\u7d30/\u30ab\u30fc\u30c8\u660e\u7d30\u306e\u7d50\u5408\u30ad\u30fc\u306b\u306a\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c26\u3002",
                        "type": "string",
                        "minLength": 0,
                        "maxLength": 64,
                        "example": "sample-001"
                    },
                    "stockFind": {
                        "type": [
                            "boolean",
                            "null"
                        ],
                        "title": "\u5728\u5eab\u691c\u7d22\u30d5\u30e9\u30b0",
                        "description": "/product \u306e\u51e6\u7406\u6587\u8108\u304b\u3089\u6d3e\u751f\u3057\u305f\u5728\u5eab\u691c\u7d22\u30d5\u30e9\u30b0\u3002ALPS\u57fa\u790e\u8a9e\u3060\u3051\u3067\u306f\u5358\u4f4d\u3084\u7528\u9014\u304c\u4e0d\u8db3\u3059\u308b\u305f\u3081\u3001\u3053\u306eResource\u4e0a\u306e\u610f\u5473\u3092\u660e\u793a\u3059\u308b\u3002"
                    },
                    "csrfToken": {
                        "title": "\u51e6\u7406\u8b58\u5225\u5b50",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u306e\u507d\u9020\u3092\u9632\u3050\u305f\u3081\u306b\u9001\u4fe1\u5143\u753b\u9762\u3067\u767a\u884c\u3055\u308c\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "productName",
                    "price02",
                    "productCode",
                    "stockFind"
                ]
            },
            "GET/productsResponse": {
                "title": "GET /products response",
                "description": "GET /products response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "filters": {
                        "type": [
                            "object",
                            "null"
                        ],
                        "title": "\u691c\u7d22\u6761\u4ef6",
                        "description": "/products \u306e\u4e00\u89a7\u8868\u793a\u3092\u5236\u5fa1\u3059\u308b\u30da\u30fc\u30b8\u30f3\u30b0/\u691c\u7d22\u6761\u4ef6\u3002\u4ef6\u6570\u3001\u958b\u59cb\u4f4d\u7f6e\u3001\u4e26\u3073\u9806\u3001\u524d\u5f8c\u30ea\u30f3\u30af\u3092\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u304c\u518d\u73fe\u3059\u308b\u305f\u3081\u306e\u5024\u3002",
                        "properties": {
                            "disp_number": {
                                "type": [
                                    "string",
                                    "integer",
                                    "null"
                                ],
                                "maximum": 2147483647,
                                "title": "\u8868\u793a\u4ef6\u6570\u6307\u5b9a",
                                "description": "/products \u306e\u4e00\u89a7\u8868\u793a\u3092\u5236\u5fa1\u3059\u308b\u30da\u30fc\u30b8\u30f3\u30b0/\u691c\u7d22\u6761\u4ef6\u3002\u4ef6\u6570\u3001\u958b\u59cb\u4f4d\u7f6e\u3001\u4e26\u3073\u9806\u3001\u524d\u5f8c\u30ea\u30f3\u30af\u3092\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u304c\u518d\u73fe\u3059\u308b\u305f\u3081\u306e\u5024\u3002",
                                "minLength": 0,
                                "maxLength": 64,
                                "$comment": "EC-CUBE\u4e92\u63db\u306e\u30d5\u30a9\u30fc\u30e0/\u4e00\u89a7\u5883\u754c\u3067\u6570\u5024\u3068\u6587\u5b57\u5217\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u3002\u696d\u52d9\u89e3\u91c8\u306fResource/Semantic\u5c64\u3067\u884c\u3046\u3002"
                            },
                            "nameKeyword": {
                                "type": [
                                    "string",
                                    "null"
                                ],
                                "minLength": 0,
                                "maxLength": 255,
                                "title": "\u540d\u524d\u691c\u7d22\u30ad\u30fc\u30ef\u30fc\u30c9",
                                "description": "/products \u306e\u691c\u7d22\u6761\u4ef6\u3002\u5546\u54c1\u540d\u30fb\u4f1a\u54e1\u540d\u30fb\u7ba1\u7406\u8005\u540d\u306a\u3069\u3001\u3053\u306e\u4e00\u89a7\u753b\u9762\u3067\u540d\u524d\u3068\u3057\u3066\u6271\u3046\u8868\u793a\u540d\u3092\u90e8\u5206\u4e00\u81f4\u691c\u7d22\u3059\u308b\u3002",
                                "example": "\u9234\u6728"
                            },
                            "name": {
                                "type": [
                                    "string",
                                    "null"
                                ],
                                "minLength": 0,
                                "maxLength": 255,
                                "title": "\u5546\u54c1\u540d",
                                "description": "/products \u3067\u8868\u793a\u3059\u308b\u5546\u54c1\u540d\u3002\u691c\u7d22\u30fb\u4e00\u89a7\u30fb\u8a73\u7d30\u3067\u30e6\u30fc\u30b6\u30fc\u306b\u898b\u305b\u308b\u8ca9\u58f2\u540d\u3002",
                                "example": "\u30c6\u30b9\u30c8\u7ba1\u7406\u8005"
                            },
                            "pageno": {
                                "type": [
                                    "string",
                                    "integer",
                                    "null"
                                ],
                                "maximum": 2147483647,
                                "title": "\u30da\u30fc\u30b8\u756a\u53f7",
                                "description": "/products \u306e\u4e00\u89a7\u8868\u793a\u3092\u5236\u5fa1\u3059\u308b\u30da\u30fc\u30b8\u30f3\u30b0/\u691c\u7d22\u6761\u4ef6\u3002\u4ef6\u6570\u3001\u958b\u59cb\u4f4d\u7f6e\u3001\u4e26\u3073\u9806\u3001\u524d\u5f8c\u30ea\u30f3\u30af\u3092\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u304c\u518d\u73fe\u3059\u308b\u305f\u3081\u306e\u5024\u3002",
                                "minLength": 0,
                                "maxLength": 64,
                                "$comment": "EC-CUBE\u4e92\u63db\u306e\u30d5\u30a9\u30fc\u30e0/\u4e00\u89a7\u5883\u754c\u3067\u6570\u5024\u3068\u6587\u5b57\u5217\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u3002\u696d\u52d9\u89e3\u91c8\u306fResource/Semantic\u5c64\u3067\u884c\u3046\u3002"
                            },
                            "orderby": {
                                "type": [
                                    "string",
                                    "null"
                                ],
                                "minLength": 0,
                                "maxLength": 255,
                                "title": "\u4e26\u3073\u9806",
                                "description": "/products \u306e\u4e00\u89a7\u8868\u793a\u3092\u5236\u5fa1\u3059\u308b\u30da\u30fc\u30b8\u30f3\u30b0/\u691c\u7d22\u6761\u4ef6\u3002\u4ef6\u6570\u3001\u958b\u59cb\u4f4d\u7f6e\u3001\u4e26\u3073\u9806\u3001\u524d\u5f8c\u30ea\u30f3\u30af\u3092\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u304c\u518d\u73fe\u3059\u308b\u305f\u3081\u306e\u5024\u3002"
                            },
                            "categoryName": {
                                "type": [
                                    "string",
                                    "null"
                                ],
                                "minLength": 0,
                                "maxLength": 32,
                                "title": "\u30ab\u30c6\u30b4\u30ea\u540d",
                                "description": "\u30ab\u30c6\u30b4\u30ea\u306e\u8868\u793a\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 4\u301c6; \u89b3\u5bdf\u5024 'Food', 'Drinks'\u3002",
                                "example": "Food"
                            },
                            "category_id": {
                                "type": [
                                    "string",
                                    "null"
                                ],
                                "pattern": "^[0-9]+$",
                                "minLength": 1,
                                "maxLength": 10,
                                "title": "\u9078\u629e\u4e2d\u30ab\u30c6\u30b4\u30eaID",
                                "description": "/products \u306e\u691c\u7d22\u30d5\u30a9\u30fc\u30e0\u306b\u518d\u8868\u793a\u3059\u308b\u9078\u629e\u4e2d\u30ab\u30c6\u30b4\u30eaID\u3002HTTP query\u7531\u6765\u306e\u6587\u5b57\u5217\u5024\u3067\u3001\u30ab\u30c6\u30b4\u30ea\u7d5e\u308a\u8fbc\u307f\u6761\u4ef6\u3092\u4fdd\u6301\u3059\u308b\u3002",
                                "$comment": "Response\u306efilters\u306f\u5165\u529b\u518d\u8868\u793a\u7528\u306etransport\u5024\u306a\u306e\u3067\u3001DB ID\u3068\u3057\u3066\u306einteger\u3067\u306f\u306a\u304fHTML query\u3068\u540c\u3058string|null\u3067\u8868\u3059\u3002"
                            }
                        },
                        "additionalProperties": false,
                        "required": [
                            "disp_number",
                            "nameKeyword",
                            "name",
                            "pageno",
                            "orderby",
                            "categoryName",
                            "category_id"
                        ]
                    },
                    "pager": {
                        "type": [
                            "object",
                            "null"
                        ],
                        "title": "\u30da\u30fc\u30b8\u30e3",
                        "description": "/products \u306e\u4e00\u89a7\u8868\u793a\u3092\u5236\u5fa1\u3059\u308b\u30da\u30fc\u30b8\u30f3\u30b0/\u691c\u7d22\u6761\u4ef6\u3002\u4ef6\u6570\u3001\u958b\u59cb\u4f4d\u7f6e\u3001\u4e26\u3073\u9806\u3001\u524d\u5f8c\u30ea\u30f3\u30af\u3092\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u304c\u518d\u73fe\u3059\u308b\u305f\u3081\u306e\u5024\u3002",
                        "properties": {
                            "previous": {
                                "type": [
                                    "integer",
                                    "null"
                                ],
                                "minimum": 1,
                                "maximum": 10000,
                                "title": "\u524d\u30da\u30fc\u30b8\u756a\u53f7",
                                "description": "/products \u306e\u30da\u30fc\u30b8\u30e3\u3067\u3001\u73fe\u5728\u30da\u30fc\u30b8\u306e\u76f4\u524d\u306b\u9077\u79fb\u3059\u308b\u30da\u30fc\u30b8\u756a\u53f7\u3002\u5148\u982d\u30da\u30fc\u30b8\u3067\u306f null\u3002"
                            },
                            "next": {
                                "type": [
                                    "integer",
                                    "null"
                                ],
                                "minimum": 1,
                                "maximum": 10000,
                                "title": "\u6b21\u30da\u30fc\u30b8\u756a\u53f7",
                                "description": "/products \u306e\u30da\u30fc\u30b8\u30e3\u3067\u3001\u73fe\u5728\u30da\u30fc\u30b8\u306e\u76f4\u5f8c\u306b\u9077\u79fb\u3059\u308b\u30da\u30fc\u30b8\u756a\u53f7\u3002\u6700\u7d42\u30da\u30fc\u30b8\u3067\u306f null\u3002"
                            },
                            "pages": {
                                "type": [
                                    "array",
                                    "null"
                                ],
                                "title": "\u30da\u30fc\u30b8\u4e00\u89a7",
                                "description": "/products \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u30da\u30fc\u30b8\u4e00\u89a7\u3002\u914d\u5217\u8981\u7d20\u306fALPS\u610f\u5473\u3068Fake\u89b3\u5bdf\u306b\u57fa\u3065\u304d\u3001\u56fa\u5b9a\u3067\u304d\u306a\u3044\u52d5\u7684\u5217\u306f\u4f8b\u5916\u7406\u7531\u3092\u53f0\u5e33\u5316\u3059\u308b\u3002",
                                "items": {
                                    "type": "integer",
                                    "title": "\u30da\u30fc\u30b8\u756a\u53f7",
                                    "minimum": 1,
                                    "maximum": 10000,
                                    "description": "/products \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u30da\u30fc\u30b8\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `pages` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002"
                                },
                                "minItems": 0
                            },
                            "pageCount": {
                                "type": [
                                    "integer",
                                    "null"
                                ],
                                "minimum": 0,
                                "maximum": 2147483647,
                                "title": "\u4ef6\u6570",
                                "description": "/products \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8fd4\u3059\u4ef6\u6570\u3002\u4e00\u89a7\u30fb\u96c6\u8a08\u30fb\u51e6\u7406\u7d50\u679c\u306e\u898f\u6a21\u3092\u8868\u3059\u975e\u8ca0\u6574\u6570\u3002"
                            },
                            "current": {
                                "type": [
                                    "integer",
                                    "null"
                                ],
                                "minimum": 0,
                                "maximum": 2147483647,
                                "title": "\u73fe\u5728\u30da\u30fc\u30b8",
                                "description": "/products \u306e\u4e00\u89a7\u8868\u793a\u3092\u5236\u5fa1\u3059\u308b\u30da\u30fc\u30b8\u30f3\u30b0/\u691c\u7d22\u6761\u4ef6\u3002\u4ef6\u6570\u3001\u958b\u59cb\u4f4d\u7f6e\u3001\u4e26\u3073\u9806\u3001\u524d\u5f8c\u30ea\u30f3\u30af\u3092\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u304c\u518d\u73fe\u3059\u308b\u305f\u3081\u306e\u5024\u3002"
                            }
                        },
                        "additionalProperties": false,
                        "required": [
                            "pages",
                            "pageCount",
                            "current"
                        ]
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "\u3053\u306e\u30ec\u30b9\u30dd\u30f3\u30b9/\u64cd\u4f5c\u304c\u5bfe\u5fdc\u3059\u308bALPS\u9077\u79fbID\u3002\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u306e\u72b6\u614b\u9077\u79fb\u8ffd\u8de1\u306b\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "csrfToken": {
                        "title": "\u51e6\u7406\u8b58\u5225\u5b50",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u306e\u507d\u9020\u3092\u9632\u3050\u305f\u3081\u306b\u9001\u4fe1\u5143\u753b\u9762\u3067\u767a\u884c\u3055\u308c\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "totalItemCount": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 2147483647,
                        "title": "\u7dcf\u4ef6\u6570",
                        "description": "/products \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8fd4\u3059\u7dcf\u4ef6\u6570\u3002\u4e00\u89a7\u30fb\u96c6\u8a08\u30fb\u51e6\u7406\u7d50\u679c\u306e\u898f\u6a21\u3092\u8868\u3059\u975e\u8ca0\u6574\u6570\u3002"
                    },
                    "products": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u5546\u54c1\u4e00\u89a7",
                        "description": "/products \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u5546\u54c1\u4e00\u89a7\u3002\u914d\u5217\u8981\u7d20\u306fALPS\u610f\u5473\u3068Fake\u89b3\u5bdf\u306b\u57fa\u3065\u304d\u3001\u56fa\u5b9a\u3067\u304d\u306a\u3044\u52d5\u7684\u5217\u306f\u4f8b\u5916\u7406\u7531\u3092\u53f0\u5e33\u5316\u3059\u308b\u3002",
                        "items": {
                            "type": [
                                "object",
                                "null"
                            ],
                            "title": "\u5546\u54c1\u6982\u8981",
                            "description": "/products \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u5546\u54c1\u6982\u8981\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `products` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002",
                            "properties": {
                                "mainListImage": {
                                    "title": "\u4e00\u89a7\u30e1\u30a4\u30f3\u753b\u50cfURI",
                                    "description": "/products \u306e\u753b\u9762\u8868\u793a\u306b\u4f7f\u3046\u4e00\u89a7\u30e1\u30a4\u30f3\u753b\u50cfURI\u3002\u696d\u52d9\u30a8\u30f3\u30c6\u30a3\u30c6\u30a3\u305d\u306e\u3082\u306e\u3067\u306f\u306a\u304f\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8/\u4e00\u89a7\u8868\u793a\u306e\u88dc\u52a9\u5024\u3002",
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "format": "uri-reference",
                                    "minLength": 1,
                                    "maxLength": 2048,
                                    "example": "/products"
                                },
                                "stock": {
                                    "type": [
                                        "integer",
                                        "null"
                                    ],
                                    "minimum": 0,
                                    "maximum": 2147483647,
                                    "title": "\u5728\u5eab\u6570",
                                    "description": "\u7269\u7406\u5728\u5eab\u6570\u3002stockUnlimited=true\u306e\u5834\u5408\u306f\u7121\u8996\u3055\u308c\u308b\u3002\u6ce8\u6587\u78ba\u5b9a\u6642\u306b\u5f15\u304d\u5f53\u3066\u304c\u884c\u308f\u308c\u308b Fake\u89b3\u5bdf\u6570\u5024 0\u301c100; \u89b3\u5bdf\u5024 '0', '10', '20', '50', '5', '7', '100', '3'; null 9/73\u3002",
                                    "example": 0
                                },
                                "name": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 255,
                                    "title": "\u5546\u54c1\u540d",
                                    "description": "/products \u3067\u8868\u793a\u3059\u308b\u5546\u54c1\u540d\u3002\u691c\u7d22\u30fb\u4e00\u89a7\u30fb\u8a73\u7d30\u3067\u30e6\u30fc\u30b6\u30fc\u306b\u898b\u305b\u308b\u8ca9\u58f2\u540d\u3002",
                                    "example": "\u30c6\u30b9\u30c8\u7ba1\u7406\u8005"
                                },
                                "productName": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 128,
                                    "title": "\u5546\u54c1\u540d",
                                    "description": "\u5546\u54c1\u306e\u8868\u793a\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 6\u301c17\u3002",
                                    "example": "\u30b5\u30f3\u30d7\u30eb\u5546\u54c1 A"
                                },
                                "price02": {
                                    "title": "\u8ca9\u58f2\u4fa1\u683c",
                                    "description": "\u5b9f\u969b\u306e\u8ca9\u58f2\u4fa1\u683c\uff08\u7a0e\u629c\uff09\u3002\u7a0e\u8a08\u7b97\u30fb\u5c0f\u8a08\u8a08\u7b97\u306e\u30d9\u30fc\u30b9 Fake\u89b3\u5bdf\u6570\u5024 800\u301c28000\u3002",
                                    "type": [
                                        "integer",
                                        "null"
                                    ],
                                    "minimum": 0,
                                    "maximum": 999999999,
                                    "example": 3500
                                },
                                "tagNames": {
                                    "type": [
                                        "array",
                                        "null"
                                    ],
                                    "title": "\u30bf\u30b0\u540d\u4e00\u89a7",
                                    "description": "Fake\u89b3\u5bdf\u6570\u5024 0\u301c2\u3002",
                                    "items": {
                                        "type": "string",
                                        "title": "\u30bf\u30b0\u540d",
                                        "minLength": 0,
                                        "maxLength": 128,
                                        "description": "/products \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u5546\u54c1\u884c\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `tagNames` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002"
                                    },
                                    "minItems": 0
                                },
                                "categoryNames": {
                                    "type": [
                                        "array",
                                        "null"
                                    ],
                                    "title": "\u30ab\u30c6\u30b4\u30ea\u540d\u4e00\u89a7",
                                    "description": "Fake\u89b3\u5bdf\u6570\u5024 0\u301c4\u3002",
                                    "items": {
                                        "type": "string",
                                        "title": "\u30ab\u30c6\u30b4\u30ea\u540d",
                                        "minLength": 0,
                                        "maxLength": 128,
                                        "description": "/products \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u5546\u54c1\u884c\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `categoryNames` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002"
                                    },
                                    "minItems": 0
                                },
                                "productCode": {
                                    "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                                    "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 \u5546\u54c1\u3092\u8b58\u5225\u3059\u308bSKU\u3002Fake corpus\u3067\u306fASCII\u82f1\u6570\u30fb\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3067\u3001\u53d7\u6ce8\u660e\u7d30/\u30ab\u30fc\u30c8\u660e\u7d30\u306e\u7d50\u5408\u30ad\u30fc\u306b\u306a\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c26\u3002",
                                    "type": "string",
                                    "minLength": 0,
                                    "maxLength": 64,
                                    "example": "sample-001"
                                },
                                "descriptionList": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 255,
                                    "title": "\u4e00\u89a7\u7528\u8aac\u660e\u6587",
                                    "description": "\u5546\u54c1\u4e00\u89a7\u30fb\u691c\u7d22\u7d50\u679c\u306b\u8868\u793a\u3059\u308b\u77ed\u3044\u8aac\u660e\u6587"
                                },
                                "stockFind": {
                                    "type": [
                                        "boolean",
                                        "null"
                                    ],
                                    "title": "\u5728\u5eab\u691c\u7d22\u30d5\u30e9\u30b0",
                                    "description": "/products \u306e\u51e6\u7406\u6587\u8108\u304b\u3089\u6d3e\u751f\u3057\u305f\u5728\u5eab\u691c\u7d22\u30d5\u30e9\u30b0\u3002ALPS\u57fa\u790e\u8a9e\u3060\u3051\u3067\u306f\u5358\u4f4d\u3084\u7528\u9014\u304c\u4e0d\u8db3\u3059\u308b\u305f\u3081\u3001\u3053\u306eResource\u4e0a\u306e\u610f\u5473\u3092\u660e\u793a\u3059\u308b\u3002"
                                },
                                "id": {
                                    "type": [
                                        "string",
                                        "integer",
                                        "null"
                                    ],
                                    "title": "ID",
                                    "description": "Fake\u89b3\u5bdf\u6587\u5b57\u9577 13\u301c32; \u89b3\u5bdf\u5024 'ad000000000000000000000000000001', 'ad000000000000000000000000000003', 'fedcba9876543210fedcba9876543210', '10000000aaaa1111bbbb2222cccc3333', 'ad000000000000000000000000000002', '0123456789abcdef0123456789abcdef', 'aaaaaaaa00000000bbbbbbbb11111111', '20000000dddd2222eeee3333ffff4444'\u3002",
                                    "example": "ad000000000000000000000000000001",
                                    "minLength": 0,
                                    "maxLength": 128,
                                    "$comment": "Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u305f\u3081\u3001\u3053\u306e\u5883\u754c\u3060\u3051mixedBoundaryId\u3068\u3057\u3066\u6271\u3046\u3002"
                                },
                                "unitPrice": {
                                    "title": "\u5358\u4fa1\uff08\u8868\u793a/\u8a08\u7b97\u7528\uff09",
                                    "description": "\u660e\u7d301\u4ef6\u3042\u305f\u308a\u306e\u5358\u4fa1\u3002\u53d7\u6ce8/\u30ab\u30fc\u30c8\u660e\u7d30\u30fb\u304a\u6c17\u306b\u5165\u308a\u30b9\u30ca\u30c3\u30d7\u30b7\u30e7\u30c3\u30c8\u3067\u306f\u8ffd\u52a0\u6642\u70b9\u306e price02 \u3092\u30b9\u30ca\u30c3\u30d7\u30b7\u30e7\u30c3\u30c8\u3057\u3066\u4fdd\u6301\u3059\u308b\uff08\u5f8c\u306e\u5024\u5f15\u304d\u3084\u30de\u30b9\u30bf\u6539\u5b9a\u306b\u5f71\u97ff\u3055\u308c\u306a\u3044\uff09\u3002BeMart \u5074\u3067\u306f `int` \u5186\u6574\u6570 Fake\u89b3\u5bdf\u6570\u5024 1200\u301c9800; \u89b3\u5bdf\u5024 '1200', '9800'\u3002",
                                    "type": [
                                        "integer",
                                        "null"
                                    ],
                                    "minimum": 0,
                                    "maximum": 999999999,
                                    "example": 1200
                                },
                                "fileName": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 1,
                                    "maxLength": 255,
                                    "title": "\u30d5\u30a1\u30a4\u30eb\u540d",
                                    "description": "\u5546\u54c1\u753b\u50cf\u306e\u30d5\u30a1\u30a4\u30eb\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 12\u301c15; \u89b3\u5bdf\u5024 'Mail/order.twig', 'Mail/entry.twig', 'sample-a.jpg', 'sample-b.jpg'\u3002",
                                    "example": "Mail/order.twig"
                                }
                            },
                            "additionalProperties": false,
                            "$comment": "\u914d\u5217\u8981\u7d20\u306fFake/Resource\u3067\u89b3\u5bdf\u3055\u308c\u305f\u65e2\u77e5property\u306b\u56fa\u5b9a\u3059\u308b\u3002\u65b0\u3057\u3044\u5217\u304c\u5fc5\u8981\u306b\u306a\u3063\u305f\u5834\u5408\u306fSemantic-Ex\u89b3\u5bdf\u306b\u8ffd\u52a0\u3057\u3066schema\u3092\u66f4\u65b0\u3059\u308b\u3002"
                        },
                        "minItems": 0
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "filters",
                    "pager",
                    "transitionId",
                    "totalItemCount",
                    "products"
                ]
            },
            "GET/resetResponse": {
                "title": "GET /reset response",
                "description": "GET /reset response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "form": {
                        "type": [
                            "object",
                            "array",
                            "null"
                        ],
                        "title": "\u5165\u529b\u30d5\u30a9\u30fc\u30e0",
                        "description": "Aura/WebForm\u7531\u6765\u306e\u30d5\u30a9\u30fc\u30e0\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3002\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5185\u90e8\u69cb\u9020\u306e\u305f\u3081schema\u3067\u306f\u5b58\u5728\u3068\u578b\u306e\u307f\u3092\u5951\u7d04\u3059\u308b\u3002",
                        "$comment": "Aura/WebForm\u7531\u6765\u306e\u4e0d\u900f\u660e\u30d5\u30a9\u30fc\u30e0\u8868\u73fe\u3002Resource\u5883\u754c\u3067\u306f\u30d5\u30a9\u30fc\u30e0\u306e\u5b58\u5728\u3068\u30b3\u30f3\u30c6\u30ad\u30b9\u30c8\u3060\u3051\u3092\u5951\u7d04\u3057\u3001\u5185\u90e8\u69cb\u9020\u306f\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5883\u754c\u306b\u59d4\u306d\u308b\u305f\u3081\u8ffd\u52a0\u30ad\u30fc\u5236\u7d04\u3092\u7f6e\u304b\u306a\u3044\u3002"
                    },
                    "fields": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u9759\u7684\u8868\u793a\u30d5\u30a3\u30fc\u30eb\u30c9",
                        "description": "/reset \u3067\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u3078\u6e21\u3059\u8868\u793a\u7528\u30d5\u30a3\u30fc\u30eb\u30c9\u96c6\u5408\u3002\u30d5\u30a9\u30fc\u30e0\u5165\u529b\u5024\u3067\u306f\u306a\u304f\u753b\u9762\u6587\u8108\u30c7\u30fc\u30bf\u3002",
                        "items": {
                            "type": "string",
                            "title": "\u8868\u793a\u30d5\u30a3\u30fc\u30eb\u30c9",
                            "minLength": 0,
                            "maxLength": 255,
                            "description": "/reset \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u30d1\u30b9\u30ef\u30fc\u30c9\u518d\u8a2d\u5b9a\u884c\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `fields` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002"
                        }
                    },
                    "resetKey": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@-]+$",
                        "title": "\u30d1\u30b9\u30ef\u30fc\u30c9\u30ea\u30bb\u30c3\u30c8\u30ad\u30fc",
                        "description": "\u30d1\u30b9\u30ef\u30fc\u30c9\u30ea\u30bb\u30c3\u30c8\u7528\u306e\u30ef\u30f3\u30bf\u30a4\u30e0\u30c8\u30fc\u30af\u30f3\u3002\u30ea\u30bb\u30c3\u30c8\u8981\u6c42\u6642\u306b\u751f\u6210\u3001\u4f7f\u7528\u5f8c\u306b\u30af\u30ea\u30a2 Fake\u89b3\u5bdf\u6587\u5b57\u9577 32\u301c34; \u89b3\u5bdf\u5024 'valid-reset-key-pilot15-aaaa1111', 'expired-token-key-pilot15-aaaa1111'\u3002",
                        "example": "valid-reset-key-pilot15-aaaa1111",
                        "$comment": "\u30ad\u30fc/\u8ffd\u8de1\u756a\u53f7\u306f\u7167\u5408\u7528\u306e\u4e0d\u900f\u660e\u6587\u5b57\u5217\u3067\u3001\u6570\u5024\u6f14\u7b97\u5bfe\u8c61\u3067\u306f\u306a\u3044\u3002"
                    },
                    "submitTo": {
                        "type": [
                            "object",
                            "null"
                        ],
                        "title": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5148\u30ea\u30f3\u30af",
                        "description": "/reset \u306e\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u306b\u4f7f\u3046\u9001\u4fe1\u5148\u30ea\u30f3\u30af\u3002HTTP\u30e1\u30bd\u30c3\u30c9\u3068\u9077\u79fb\u5148\u3092\u307e\u3068\u3081\u3001unsafe\u64cd\u4f5c\u306e\u5165\u53e3\u3092\u660e\u793a\u3059\u308b\u3002",
                        "properties": {
                            "href": {
                                "title": "\u30ea\u30f3\u30afURI\u53c2\u7167\uff08URI\u53c2\u7167\uff09",
                                "description": "\u30da\u30fc\u30b8\u306eURL\u30d1\u30b9\uff08Symfony\u30eb\u30fc\u30c8\u540d\u3002\u4f8b: homepage, product_list\uff09",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "method": {
                                "type": [
                                    "string",
                                    "null"
                                ],
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ],
                                "title": "HTTP\u30e1\u30bd\u30c3\u30c9",
                                "description": "/reset \u306e\u30ea\u30f3\u30af\u307e\u305f\u306f\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u3067\u4f7f\u3046HTTP\u30e1\u30bd\u30c3\u30c9\u3002GET/POST\u7b49\u306e\u9077\u79fb\u65b9\u6cd5\u3092\u8868\u3059\u3002"
                            }
                        },
                        "additionalProperties": false,
                        "required": [
                            "href",
                            "method"
                        ]
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "\u3053\u306e\u30ec\u30b9\u30dd\u30f3\u30b9/\u64cd\u4f5c\u304c\u5bfe\u5fdc\u3059\u308bALPS\u9077\u79fbID\u3002\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u306e\u72b6\u614b\u9077\u79fb\u8ffd\u8de1\u306b\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "csrfToken": {
                        "title": "\u51e6\u7406\u8b58\u5225\u5b50",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u306e\u507d\u9020\u3092\u9632\u3050\u305f\u3081\u306b\u9001\u4fe1\u5143\u753b\u9762\u3067\u767a\u884c\u3055\u308c\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "resetKey",
                    "transitionId",
                    "csrfToken"
                ]
            },
            "POST/resetResponse": {
                "title": "POST /reset response",
                "description": "POST /reset response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "customerId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u4f1a\u54e1ID",
                        "description": "dtb_customer.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e Entity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\uff08\u30de\u30b9\u30a2\u30b5\u30a4\u30f3\u30e1\u30f3\u30c8\u9632\u6b62\u306e\u305f\u3081\u3001Session/AuthZ \u7d4c\u7531\u3067\u8aad\u307f\u51fa\u3057\u3001\u30ea\u30af\u30a8\u30b9\u30c8\u672c\u6587\u304b\u3089\u306f\u53d7\u3051\u53d6\u3089\u306a\u3044\uff09\u3002Favorite / Cart / Order \u306e\u6240\u6709\u8005\u30ad\u30fc\u3068\u3057\u3066\u6a2a\u65ad\u4f7f\u7528 Fake\u89b3\u5bdf\u6587\u5b57\u9577 12\u301c32; \u89b3\u5bdf\u5024 'customer-001', '0123456789abcdef0123456789abcdef', 'customer-002', 'favorite-list-customer', 'favorite-html-customer', 'fedcba9876543210fedcba9876543210', 'aaaaaaaa00000000bbbbbbbb11111111', '10000000aaaa1111bbbb2222cccc3333'\u3002",
                        "example": "customer-001",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "customerId"
                ]
            },
            "GET/shoppingResponse": {
                "title": "GET /shopping response",
                "description": "GET /shopping response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "form": {
                        "type": [
                            "object",
                            "array",
                            "null"
                        ],
                        "title": "\u5165\u529b\u30d5\u30a9\u30fc\u30e0",
                        "description": "Aura/WebForm\u7531\u6765\u306e\u30d5\u30a9\u30fc\u30e0\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3002\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5185\u90e8\u69cb\u9020\u306e\u305f\u3081schema\u3067\u306f\u5b58\u5728\u3068\u578b\u306e\u307f\u3092\u5951\u7d04\u3059\u308b\u3002",
                        "$comment": "Aura/WebForm\u7531\u6765\u306e\u4e0d\u900f\u660e\u30d5\u30a9\u30fc\u30e0\u8868\u73fe\u3002Resource\u5883\u754c\u3067\u306f\u30d5\u30a9\u30fc\u30e0\u306e\u5b58\u5728\u3068\u30b3\u30f3\u30c6\u30ad\u30b9\u30c8\u3060\u3051\u3092\u5951\u7d04\u3057\u3001\u5185\u90e8\u69cb\u9020\u306f\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5883\u754c\u306b\u59d4\u306d\u308b\u305f\u3081\u8ffd\u52a0\u30ad\u30fc\u5236\u7d04\u3092\u7f6e\u304b\u306a\u3044\u3002"
                    },
                    "cartCount": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 2147483647,
                        "title": "\u30ab\u30fc\u30c8\u4ef6\u6570",
                        "description": "/shopping \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8fd4\u3059\u30ab\u30fc\u30c8\u4ef6\u6570\u3002\u4e00\u89a7\u30fb\u96c6\u8a08\u30fb\u51e6\u7406\u7d50\u679c\u306e\u898f\u6a21\u3092\u8868\u3059\u975e\u8ca0\u6574\u6570\u3002"
                    },
                    "totalPrice": {
                        "title": "\u30ab\u30fc\u30c8\u5408\u8a08\u91d1\u984d",
                        "description": "\u30ab\u30fc\u30c8\u5185\u306e\u7a0e\u8fbc\u5408\u8a08\u91d1\u984d\u3002PurchaseFlow.calculateTotal()\u3067\u6bce\u56de\u518d\u8a08\u7b97\u3055\u308c\u308b\u30ad\u30e3\u30c3\u30b7\u30e5\u5024\u3002\u53d7\u6ce8\u306etotal\u3068\u306f\u5225\u30d7\u30ed\u30d1\u30c6\u30a3 Fake\u89b3\u5bdf\u6570\u5024 0\u301c3600; \u89b3\u5bdf\u5024 '0', '1500', '3600'\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 0
                    },
                    "canCheckout": {
                        "type": [
                            "boolean",
                            "null"
                        ],
                        "title": "\u51e6\u7406\u72b6\u614b\u30d5\u30e9\u30b0",
                        "description": "/shopping \u306e\u51e6\u7406\u72b6\u614b\u3092\u793a\u3059\u51e6\u7406\u72b6\u614b\u30d5\u30e9\u30b0\u3002\u753b\u9762\u8868\u793a\u3084\u51aa\u7b49\u51e6\u7406\u7d50\u679c\u306e\u5206\u5c90\u306b\u4f7f\u3046\u771f\u507d\u5024\u3002"
                    },
                    "name02": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 80,
                        "title": "\u540d",
                        "description": "\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u30fb\u304a\u554f\u3044\u5408\u308f\u305b\u3067\u5171\u901a\u4f7f\u7528\u3055\u308c\u308b\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 1\u301c3; \u89b3\u5bdf\u5024 '\u30a2\u30ea\u30b9', '\u592a\u90ce', '\u6b21\u90ce', '\u82b1\u5b50', '\u4e09\u90ce', '\u6e08'\u3002",
                        "example": "\u30a2\u30ea\u30b9"
                    },
                    "customerId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u4f1a\u54e1ID",
                        "description": "dtb_customer.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e Entity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\uff08\u30de\u30b9\u30a2\u30b5\u30a4\u30f3\u30e1\u30f3\u30c8\u9632\u6b62\u306e\u305f\u3081\u3001Session/AuthZ \u7d4c\u7531\u3067\u8aad\u307f\u51fa\u3057\u3001\u30ea\u30af\u30a8\u30b9\u30c8\u672c\u6587\u304b\u3089\u306f\u53d7\u3051\u53d6\u3089\u306a\u3044\uff09\u3002Favorite / Cart / Order \u306e\u6240\u6709\u8005\u30ad\u30fc\u3068\u3057\u3066\u6a2a\u65ad\u4f7f\u7528 Fake\u89b3\u5bdf\u6587\u5b57\u9577 12\u301c32; \u89b3\u5bdf\u5024 'customer-001', '0123456789abcdef0123456789abcdef', 'customer-002', 'favorite-list-customer', 'favorite-html-customer', 'fedcba9876543210fedcba9876543210', 'aaaaaaaa00000000bbbbbbbb11111111', '10000000aaaa1111bbbb2222cccc3333'\u3002",
                        "example": "customer-001",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    },
                    "deliveryFeeTotal": {
                        "title": "\u9001\u6599\u5408\u8a08",
                        "description": "\u5168\u914d\u9001\u5148\u306e\u9001\u6599\u5408\u8a08\uff08\u30b9\u30ca\u30c3\u30d7\u30b7\u30e7\u30c3\u30c8\uff09\u3002deliveryFeeAmount\uff08\u5730\u57df\u5225\u9001\u6599\uff09+ deliveryFee\uff08\u5546\u54c1\u5225\u9001\u6599\uff09\u00d7\u6570\u91cf \u306e\u5408\u8a08\u3002DeliveryFeePreprocessor\u3067\u8a08\u7b97\u3002\u30ab\u30fc\u30c8\u3068\u53d7\u6ce8\u306e\u4e21\u65b9\u3067\u4f7f\u7528 Fake\u89b3\u5bdf\u6570\u5024 0\u301c800; \u89b3\u5bdf\u5024 '600', '0', '500', '800', '700'\u3002",
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 600
                    },
                    "name01": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 80,
                        "title": "\u59d3",
                        "description": "\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u30fb\u304a\u554f\u3044\u5408\u308f\u305b\u3067\u5171\u901a\u4f7f\u7528\u3055\u308c\u308b\u59d3 Fake\u89b3\u5bdf\u6587\u5b57\u9577 2\u301c2; \u89b3\u5bdf\u5024 '\u9234\u6728', '\u5c71\u7530', '\u4f50\u85e4', '\u9ad8\u6a4b', '\u9000\u4f1a'\u3002",
                        "example": "\u9234\u6728"
                    },
                    "carts": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u30ab\u30fc\u30c8\u4e00\u89a7",
                        "description": "/shopping \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u30ab\u30fc\u30c8\u4e00\u89a7\u3002\u914d\u5217\u8981\u7d20\u306fALPS\u610f\u5473\u3068Fake\u89b3\u5bdf\u306b\u57fa\u3065\u304d\u3001\u56fa\u5b9a\u3067\u304d\u306a\u3044\u52d5\u7684\u5217\u306f\u4f8b\u5916\u7406\u7531\u3092\u53f0\u5e33\u5316\u3059\u308b\u3002",
                        "items": {
                            "type": [
                                "object",
                                "null"
                            ],
                            "title": "\u30ab\u30fc\u30c8",
                            "description": "/shopping \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u30ab\u30fc\u30c8\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `carts` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002",
                            "properties": {
                                "cartKey": {
                                    "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                                    "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b \u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u30ad\u30fc\u3002ALPS\u306ecartKey\u306f\u30bb\u30c3\u30b7\u30e7\u30f3\u63a5\u982d\u8f9e\u3068\u8ca9\u58f2\u7a2e\u5225ID\u304b\u3089\u69cb\u6210\u3055\u308c\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 18\u301c23; \u89b3\u5bdf\u5024 'session-prefix-1_1', 'session-prefix-1_2', 'session-checkout-pilot5'\u3002",
                                    "type": "string",
                                    "minLength": 3,
                                    "maxLength": 128,
                                    "pattern": "^.+_[0-9]+$",
                                    "example": "session-prefix-1_1"
                                },
                                "saleTypeName": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 32,
                                    "title": "\u8ca9\u58f2\u7a2e\u5225",
                                    "description": "\u8ca9\u58f2\u7a2e\u5225\u306e\u540d\u79f0\u3002\u30ab\u30fc\u30c8\u5206\u96e2\u306e\u57fa\u6e96\u3068\u306a\u308b\u3002\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8(cartKey)\u306b\u5206\u96e2\u3055\u308c\u308b Fake\u89b3\u5bdf\u6587\u5b57\u9577 4\u301c8; \u89b3\u5bdf\u5024 '\u901a\u5e38\u8ca9\u58f2', '\u4e88\u7d04\u8ca9\u58f2', '\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u8ca9\u58f2'\u3002",
                                    "example": "\u901a\u5e38\u8ca9\u58f2"
                                },
                                "items": {
                                    "type": [
                                        "array",
                                        "null"
                                    ],
                                    "title": "\u660e\u7d30\u4e00\u89a7",
                                    "description": "/shopping \u306e\u89aa\u30aa\u30d6\u30b8\u30a7\u30af\u30c8 `cartsItem` \u306b\u542b\u307e\u308c\u308b\u660e\u7d30\u914d\u5217\u3002\u5546\u54c1\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u306e\u6587\u8108\u3067\u89e3\u91c8\u3059\u308b\u3002",
                                    "items": {
                                        "type": [
                                            "object",
                                            "null"
                                        ],
                                        "title": "\u660e\u7d30",
                                        "description": "/shopping \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u660e\u7d30\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `items` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002",
                                        "properties": {
                                            "price": {
                                                "title": "\u8ca9\u58f2\u4fa1\u683c\uff08\u8868\u793a/\u8a08\u7b97\u7528\uff09",
                                                "description": "\u5b9f\u969b\u306e\u8ca9\u58f2\u4fa1\u683c\uff08\u7a0e\u629c\uff09\u3002\u7a0e\u8a08\u7b97\u30fb\u5c0f\u8a08\u8a08\u7b97\u306e\u30d9\u30fc\u30b9 Fake\u89b3\u5bdf\u6570\u5024 800\u301c13500; \u89b3\u5bdf\u5024 '1200', '8000', '1500', '800', '1000', '13500', '9800'\u3002",
                                                "type": "integer",
                                                "minimum": 0,
                                                "maximum": 999999999,
                                                "example": 1200
                                            },
                                            "productCode": {
                                                "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                                                "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 \u5546\u54c1\u3092\u8b58\u5225\u3059\u308bSKU\u3002Fake corpus\u3067\u306fASCII\u82f1\u6570\u30fb\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3067\u3001\u53d7\u6ce8\u660e\u7d30/\u30ab\u30fc\u30c8\u660e\u7d30\u306e\u7d50\u5408\u30ad\u30fc\u306b\u306a\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c26\u3002",
                                                "type": "string",
                                                "minLength": 0,
                                                "maxLength": 64,
                                                "example": "sample-001"
                                            },
                                            "quantity": {
                                                "title": "\u6570\u91cf",
                                                "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 Fake\u89b3\u5bdf\u6570\u5024 1\u301c3; \u89b3\u5bdf\u5024 '1', '2', '3'\u3002",
                                                "type": "integer",
                                                "minimum": 1,
                                                "maximum": 999,
                                                "example": 1
                                            }
                                        },
                                        "additionalProperties": false,
                                        "$comment": "\u914d\u5217\u8981\u7d20\u306fFake/Resource\u3067\u89b3\u5bdf\u3055\u308c\u305f\u65e2\u77e5property\u306b\u56fa\u5b9a\u3059\u308b\u3002\u65b0\u3057\u3044\u5217\u304c\u5fc5\u8981\u306b\u306a\u3063\u305f\u5834\u5408\u306fSemantic-Ex\u89b3\u5bdf\u306b\u8ffd\u52a0\u3057\u3066schema\u3092\u66f4\u65b0\u3059\u308b\u3002"
                                    },
                                    "minItems": 0
                                },
                                "totalPrice": {
                                    "title": "\u30ab\u30fc\u30c8\u5408\u8a08\u91d1\u984d",
                                    "description": "\u30ab\u30fc\u30c8\u5185\u306e\u7a0e\u8fbc\u5408\u8a08\u91d1\u984d\u3002PurchaseFlow.calculateTotal()\u3067\u6bce\u56de\u518d\u8a08\u7b97\u3055\u308c\u308b\u30ad\u30e3\u30c3\u30b7\u30e5\u5024\u3002\u53d7\u6ce8\u306etotal\u3068\u306f\u5225\u30d7\u30ed\u30d1\u30c6\u30a3 Fake\u89b3\u5bdf\u6570\u5024 0\u301c3600; \u89b3\u5bdf\u5024 '0', '1500', '3600'\u3002",
                                    "type": "integer",
                                    "minimum": 0,
                                    "maximum": 999999999,
                                    "example": 0
                                },
                                "deliveryFeeTotal": {
                                    "title": "\u9001\u6599\u5408\u8a08",
                                    "description": "\u5168\u914d\u9001\u5148\u306e\u9001\u6599\u5408\u8a08\uff08\u30b9\u30ca\u30c3\u30d7\u30b7\u30e7\u30c3\u30c8\uff09\u3002deliveryFeeAmount\uff08\u5730\u57df\u5225\u9001\u6599\uff09+ deliveryFee\uff08\u5546\u54c1\u5225\u9001\u6599\uff09\u00d7\u6570\u91cf \u306e\u5408\u8a08\u3002DeliveryFeePreprocessor\u3067\u8a08\u7b97\u3002\u30ab\u30fc\u30c8\u3068\u53d7\u6ce8\u306e\u4e21\u65b9\u3067\u4f7f\u7528 Fake\u89b3\u5bdf\u6570\u5024 0\u301c800; \u89b3\u5bdf\u5024 '600', '0', '500', '800', '700'\u3002",
                                    "type": [
                                        "integer",
                                        "null"
                                    ],
                                    "minimum": 0,
                                    "maximum": 999999999,
                                    "example": 600
                                },
                                "preOrderId": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "title": "\u4eee\u6ce8\u6587ID",
                                    "description": "\u8cfc\u5165\u30d5\u30ed\u30fc\u306e\u4e00\u6642\u30bb\u30c3\u30b7\u30e7\u30f3\u30c8\u30fc\u30af\u30f3\u3002\u30ab\u30fc\u30c8\u3068\u6ce8\u6587\u78ba\u8a8d/\u6ce8\u6587\u78ba\u5b9a\u3092\u63a5\u7d9a\u3059\u308b40\u6587\u5b57\u306e\u5c0f\u6587\u5b5716\u9032ID\u3002HTML\u78ba\u8a8d\u30d5\u30a9\u30fc\u30e0\u3067\u306fhidden input\u3068\u3057\u3066\u9001\u4fe1\u3055\u308c\u308b\u3002",
                                    "minLength": 0,
                                    "maxLength": 128,
                                    "pattern": "^[0-9a-f]*$",
                                    "example": "deadbeefcafe1234567890abcdef01234567890a",
                                    "$comment": "\u5b9fDB\u3067\u306f\u30ab\u30fc\u30c8\u4f5c\u6210\u6642\u306b\u751f\u6210\u3055\u308c\u3001/shopping \u2192 /shopping/confirm \u2192 /shopping/checkout \u306e\u5883\u754c\u5951\u7d04\u3068\u3057\u3066\u4f7f\u3046\u3002"
                                }
                            },
                            "additionalProperties": false,
                            "$comment": "\u914d\u5217\u8981\u7d20\u306fFake/Resource\u3067\u89b3\u5bdf\u3055\u308c\u305f\u65e2\u77e5property\u306b\u56fa\u5b9a\u3059\u308b\u3002\u65b0\u3057\u3044\u5217\u304c\u5fc5\u8981\u306b\u306a\u3063\u305f\u5834\u5408\u306fSemantic-Ex\u89b3\u5bdf\u306b\u8ffd\u52a0\u3057\u3066schema\u3092\u66f4\u65b0\u3059\u308b\u3002"
                        },
                        "minItems": 0
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u3002\u4f1a\u54e1\u767b\u9332\u30fb\u30ed\u30b0\u30a4\u30f3\u30fb\u901a\u77e5\u3067\u5171\u901a\u306b\u4f7f\u3046\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 15\u301c58; \u89b3\u5bdf\u5024 'bob@example.com', 'login-test@example.com', 'alice@example.com', 'carol@example.com', 'provisional@example.com', 'withdrawn-30000000aaaa3333bbbb4444cccc5555@example.invalid'\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "paymentMethods": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u51e6\u7406\u4e00\u89a7",
                        "description": "/shopping \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u51e6\u7406\u4e00\u89a7\u3002ALPS\u3001Fake\u89b3\u5bdf\u3001Resource\u5883\u754c\u306e\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305f\u696d\u52d9\u5951\u7d04\u3002",
                        "items": {
                            "type": [
                                "object",
                                "null"
                            ],
                            "title": "\u51e6\u7406\u884c",
                            "description": "/shopping \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u51e6\u7406\u884c\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `paymentMethods` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002",
                            "properties": {
                                "paymentMethodId": {
                                    "type": [
                                        "integer",
                                        "null"
                                    ],
                                    "minimum": 0,
                                    "maximum": 2147483647,
                                    "title": "\u652f\u6255\u65b9\u6cd5ID",
                                    "description": "\u53d7\u6ce8\u306b\u7d10\u3065\u304f\u652f\u6255\u65b9\u6cd5\u30de\u30b9\u30bfID\u3002Fake/EC-CUBE\u5883\u754c\u3067\u306fDB\u63a1\u756a\u5024\u3068\u3057\u3066\u6271\u3046\u3002",
                                    "example": 2
                                },
                                "paymentMethodName": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 255,
                                    "title": "\u652f\u6255\u65b9\u6cd5\u540d",
                                    "description": "\u652f\u6255\u65b9\u6cd5\u306e\u8868\u793a\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 4\u301c8; \u89b3\u5bdf\u5024 '\u4ee3\u91d1\u5f15\u63db', '\u30af\u30ec\u30b8\u30c3\u30c8\u30ab\u30fc\u30c9', '\u691c\u8a3c\u5931\u6557'\u3002",
                                    "example": "\u4ee3\u91d1\u5f15\u63db"
                                }
                            },
                            "additionalProperties": false,
                            "$comment": "\u914d\u5217\u8981\u7d20\u306fFake/Resource\u3067\u89b3\u5bdf\u3055\u308c\u305f\u65e2\u77e5property\u306b\u56fa\u5b9a\u3059\u308b\u3002\u65b0\u3057\u3044\u5217\u304c\u5fc5\u8981\u306b\u306a\u3063\u305f\u5834\u5408\u306fSemantic-Ex\u89b3\u5bdf\u306b\u8ffd\u52a0\u3057\u3066schema\u3092\u66f4\u65b0\u3059\u308b\u3002"
                        },
                        "minItems": 0
                    },
                    "defaultShippingAddress": {
                        "type": [
                            "object",
                            "null"
                        ],
                        "title": "\u51e6\u7406\u4e00\u89a7",
                        "description": "/shopping \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u51e6\u7406\u4e00\u89a7\u3002ALPS\u3001Fake\u89b3\u5bdf\u3001Resource\u5883\u754c\u306e\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305f\u696d\u52d9\u5951\u7d04\u3002",
                        "properties": {
                            "addr02": {
                                "type": [
                                    "string",
                                    "null"
                                ],
                                "minLength": 0,
                                "maxLength": 32,
                                "title": "\u756a\u5730\u30fb\u5efa\u7269\u540d",
                                "description": "\u756a\u5730\u30fb\u30d3\u30eb\u540d\u30fb\u90e8\u5c4b\u756a\u53f7\u7b49\u306e\u8a73\u7d30\u4f4f\u6240 Fake\u89b3\u5bdf\u6587\u5b57\u9577 5\u301c8; \u89b3\u5bdf\u5024 '\u795e\u5bae\u524d1-1-1', '\u4e38\u306e\u51852-2-2', '\u6885\u75301-1-1', '1-2-3'; null 18/33\u3002",
                                "example": "\u795e\u5bae\u524d1-1-1"
                            },
                            "phoneNumber": {
                                "title": "\u96fb\u8a71\u756a\u53f7",
                                "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u3002Fake corpus\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3060\u304c\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3059\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c10; \u89b3\u5bdf\u5024 '0312345678', '0901234567', '0612345678'; null 18/33\u3002",
                                "type": [
                                    "string",
                                    "null"
                                ],
                                "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                                "minLength": 10,
                                "maxLength": 13,
                                "example": "0312345678"
                            },
                            "addr01": {
                                "type": [
                                    "string",
                                    "null"
                                ],
                                "minLength": 0,
                                "maxLength": 32,
                                "title": "\u5e02\u533a\u753a\u6751",
                                "description": "\u90fd\u9053\u5e9c\u770c\u3088\u308a\u4e0b\u4f4d\u306e\u5e02\u533a\u753a\u6751\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 3\u301c7; \u89b3\u5bdf\u5024 '\u6e0b\u8c37\u533a', '\u5343\u4ee3\u7530\u533a', '\u5927\u962a\u5e02\u5317\u533a', '\u5927\u962a\u5e02\u5317\u533a\u6885\u7530'; null 18/33\u3002",
                                "example": "\u6e0b\u8c37\u533a"
                            },
                            "postalCode": {
                                "title": "\u90f5\u4fbf\u756a\u53f7",
                                "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u6709\u7121\u3092\u3069\u3061\u3089\u3082\u53d7\u3051\u5165\u308c\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 7\u301c8; \u89b3\u5bdf\u5024 '1500001', '1000005', '5300001', '530-0001'; null 18/33\u3002",
                                "type": [
                                    "string",
                                    "null"
                                ],
                                "pattern": "^\\d{3}-?\\d{4}$",
                                "example": "1500001"
                            },
                            "pref": {
                                "title": "\u90fd\u9053\u5e9c\u770c",
                                "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u90fd\u9053\u5e9c\u770cID\u3002\u4f4f\u6240\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u72b6\u614b\u3067\u306f0\u3001\u78ba\u5b9a\u4f4f\u6240\u3067\u306f1\u301c47\u3092\u4f7f\u3046\u3002 Fake\u89b3\u5bdf\u6570\u5024 13\u301c27; \u89b3\u5bdf\u5024 '13', '27'; null 3/9\u3002",
                                "type": [
                                    "integer",
                                    "null"
                                ],
                                "minimum": 0,
                                "maximum": 47,
                                "example": 13
                            }
                        },
                        "additionalProperties": false,
                        "required": [
                            "addr01"
                        ]
                    },
                    "preOrderId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u4eee\u6ce8\u6587ID",
                        "description": "\u8cfc\u5165\u30d5\u30ed\u30fc\u306e\u4e00\u6642\u30bb\u30c3\u30b7\u30e7\u30f3\u30c8\u30fc\u30af\u30f3\u3002\u30ab\u30fc\u30c8\u3068\u6ce8\u6587\u78ba\u8a8d/\u6ce8\u6587\u78ba\u5b9a\u3092\u63a5\u7d9a\u3059\u308b40\u6587\u5b57\u306e\u5c0f\u6587\u5b5716\u9032ID\u3002HTML\u78ba\u8a8d\u30d5\u30a9\u30fc\u30e0\u3067\u306fhidden input\u3068\u3057\u3066\u9001\u4fe1\u3055\u308c\u308b\u3002",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[0-9a-f]*$",
                        "example": "deadbeefcafe1234567890abcdef01234567890a",
                        "$comment": "\u5b9fDB\u3067\u306f\u30ab\u30fc\u30c8\u4f5c\u6210\u6642\u306b\u751f\u6210\u3055\u308c\u3001/shopping \u2192 /shopping/confirm \u2192 /shopping/checkout \u306e\u5883\u754c\u5951\u7d04\u3068\u3057\u3066\u4f7f\u3046\u3002"
                    },
                    "csrfToken": {
                        "title": "\u8cfc\u5165\u78ba\u8a8dCSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "/shopping \u3067\u8868\u793a\u3059\u308b\u8cfc\u5165\u78ba\u8a8d\u30d5\u30a9\u30fc\u30e0\u306e\u9001\u4fe1\u5143\u691c\u8a3c\u30c8\u30fc\u30af\u30f3\u3002/shopping/confirm \u3078\u9032\u3080POST\u3067 hidden input \u3068\u3057\u3066\u9001\u4fe1\u3055\u308c\u3001Ray.Csrf CsrfToken\u5c5e\u6027\u306b\u3088\u308a\u30bb\u30c3\u30b7\u30e7\u30f3\u4e0a\u306e\u4fe1\u983c\u6e08\u307f\u30c8\u30fc\u30af\u30f3\u3068\u7167\u5408\u3055\u308c\u308b\u3002\u5b9fHTTP\u3067\u306f64\u6841hex\u3001test/fake\u6587\u8108\u3067\u306f deterministic token \u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef",
                        "$comment": "\u5b9fHTTP\u3067\u306fEccubeSharedCsrfTokenAdapter/BeMartTwigExtension\u304cPHP\u30bb\u30c3\u30b7\u30e7\u30f3\u306b\u4fdd\u5b58\u3057\u305f64\u6841hex\u3092\u8fd4\u3059\u3002test/fake context\u3067\u306fFakeCsrfToken::TOKEN\u3092\u8fd4\u3059\u305f\u3081\u3001schema\u306fCSRF\u5024\u306e\u6587\u5b57\u7a2e\u30fb\u6700\u5c0f\u9577\u306e\u307f\u5951\u7d04\u3057\u3001\u771f\u6b63\u6027\u306fCsrfForbiddenInterceptor\u3067\u691c\u8a3c\u3059\u308b\u3002"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "cartCount",
                    "totalPrice",
                    "canCheckout",
                    "name02",
                    "customerId",
                    "deliveryFeeTotal",
                    "name01",
                    "carts",
                    "email",
                    "paymentMethods",
                    "defaultShippingAddress",
                    "csrfToken"
                ]
            },
            "GET/unsupported-routeResponse": {
                "title": "GET /unsupported-route response",
                "description": "GET /unsupported-route response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "message": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u672a\u5bfe\u5fdc\u30eb\u30fc\u30c8\u30e1\u30c3\u30bb\u30fc\u30b8",
                        "description": "/unsupported-route \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u51e6\u7406\u7d50\u679c\u30e1\u30c3\u30bb\u30fc\u30b8\u3002\u6ce8\u6587\u6642\u304a\u554f\u3044\u5408\u308f\u305b\u6b04\u3067\u306f\u306a\u304f\u3001\u753b\u9762\u9077\u79fb\u3084\u5b8c\u4e86\u8868\u793a\u306e\u305f\u3081\u306e\u901a\u77e5\u6587\u3002",
                        "example": "\u914d\u9001\u306f\u5e73\u65e5\u5e0c\u671b\u3067\u3059\u3002"
                    },
                    "routeName": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 255,
                        "title": "\u30da\u30fc\u30b8URL",
                        "description": "\u30da\u30fc\u30b8\u306eURL\u30d1\u30b9\uff08Symfony\u30eb\u30fc\u30c8\u540d\u3002\u4f8b: homepage, product_list\uff09"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "routeName"
                ]
            },
            "POST/unsupported-routeResponse": {
                "title": "POST /unsupported-route response",
                "description": "POST /unsupported-route response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "message": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u672a\u5bfe\u5fdc\u30eb\u30fc\u30c8\u30e1\u30c3\u30bb\u30fc\u30b8",
                        "description": "/unsupported-route \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u51e6\u7406\u7d50\u679c\u30e1\u30c3\u30bb\u30fc\u30b8\u3002\u6ce8\u6587\u6642\u304a\u554f\u3044\u5408\u308f\u305b\u6b04\u3067\u306f\u306a\u304f\u3001\u753b\u9762\u9077\u79fb\u3084\u5b8c\u4e86\u8868\u793a\u306e\u305f\u3081\u306e\u901a\u77e5\u6587\u3002",
                        "example": "\u914d\u9001\u306f\u5e73\u65e5\u5e0c\u671b\u3067\u3059\u3002"
                    },
                    "routeName": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 255,
                        "title": "\u30da\u30fc\u30b8URL",
                        "description": "\u30da\u30fc\u30b8\u306eURL\u30d1\u30b9\uff08Symfony\u30eb\u30fc\u30c8\u540d\u3002\u4f8b: homepage, product_list\uff09"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "routeName"
                ]
            },
            "GET/admin/action-redirectResponse": {
                "title": "GET /admin/action-redirect response",
                "description": "GET /admin/action-redirect response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "message": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30e1\u30c3\u30bb\u30fc\u30b8",
                        "description": "/admin/action-redirect \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u51e6\u7406\u7d50\u679c\u30e1\u30c3\u30bb\u30fc\u30b8\u3002\u6ce8\u6587\u6642\u304a\u554f\u3044\u5408\u308f\u305b\u6b04\u3067\u306f\u306a\u304f\u3001\u753b\u9762\u9077\u79fb\u3084\u5b8c\u4e86\u8868\u793a\u306e\u305f\u3081\u306e\u901a\u77e5\u6587\u3002",
                        "example": "\u914d\u9001\u306f\u5e73\u65e5\u5e0c\u671b\u3067\u3059\u3002"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape."
            },
            "POST/admin/action-redirectResponse": {
                "title": "POST /admin/action-redirect response",
                "description": "POST /admin/action-redirect response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "message": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30e1\u30c3\u30bb\u30fc\u30b8",
                        "description": "/admin/action-redirect \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u51e6\u7406\u7d50\u679c\u30e1\u30c3\u30bb\u30fc\u30b8\u3002\u6ce8\u6587\u6642\u304a\u554f\u3044\u5408\u308f\u305b\u6b04\u3067\u306f\u306a\u304f\u3001\u753b\u9762\u9077\u79fb\u3084\u5b8c\u4e86\u8868\u793a\u306e\u305f\u3081\u306e\u901a\u77e5\u6587\u3002",
                        "example": "\u914d\u9001\u306f\u5e73\u65e5\u5e0c\u671b\u3067\u3059\u3002"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape."
            },
            "GET/admin/authority-roleResponse": {
                "title": "GET /admin/authority-role response",
                "description": "GET /admin/authority-role response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "authorityOptions": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u6a29\u9650\u9078\u629e\u80a2\u4e00\u89a7",
                        "description": "\u7ba1\u7406\u8005\u6a29\u9650\u30ec\u30d9\u30eb\u30020=\u30b7\u30b9\u30c6\u30e0\u7ba1\u7406\u8005\uff08\u6700\u9ad8\u6a29\u9650\u3001\u5168\u6a5f\u80fd\u30a2\u30af\u30bb\u30b9\u53ef\u80fd\uff09, 1=\u5e97\u8217\u30aa\u30fc\u30ca\u30fc\uff08\u5236\u9650\u3042\u308a\u3001denyUrl\u3067\u5236\u9650\u3055\u308c\u305fURL\u306b\u30a2\u30af\u30bb\u30b9\u4e0d\u53ef\uff09\u3002\u6570\u5024\u304c\u5c0f\u3055\u3044\u307b\u3069\u6a29\u9650\u304c\u9ad8\u3044\u3002AuthorityRole\u306eURL\u62d2\u5426\u30d1\u30bf\u30fc\u30f3\u3067\u30a2\u30af\u30bb\u30b9\u5236\u5fa1",
                        "items": {
                            "type": [
                                "object",
                                "null"
                            ],
                            "title": "\u6a29\u9650\u9078\u629e\u80a2",
                            "description": "/admin/authority-role \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u6a29\u9650\u9078\u629e\u80a2\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `authorityOptions` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002",
                            "properties": {
                                "label": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 255,
                                    "title": "\u8868\u793a\u30e9\u30d9\u30eb",
                                    "description": "/admin/authority-role \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8868\u793a\u307e\u305f\u306f\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u63cf\u753b\u306b\u4f7f\u3046\u8868\u793a\u30e9\u30d9\u30eb\u3002\u540c\u540dproperty\u3067\u3082\u89aa\u6587\u8108 `root` \u306b\u3088\u3063\u3066\u610f\u5473\u3092\u5206\u3051\u308b\u3002"
                                },
                                "id": {
                                    "type": [
                                        "string",
                                        "integer",
                                        "null"
                                    ],
                                    "title": "ID",
                                    "description": "Fake\u89b3\u5bdf\u6587\u5b57\u9577 13\u301c32; \u89b3\u5bdf\u5024 'ad000000000000000000000000000001', 'ad000000000000000000000000000003', 'fedcba9876543210fedcba9876543210', '10000000aaaa1111bbbb2222cccc3333', 'ad000000000000000000000000000002', '0123456789abcdef0123456789abcdef', 'aaaaaaaa00000000bbbbbbbb11111111', '20000000dddd2222eeee3333ffff4444'\u3002",
                                    "example": "ad000000000000000000000000000001",
                                    "minLength": 0,
                                    "maxLength": 128,
                                    "$comment": "Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u305f\u3081\u3001\u3053\u306e\u5883\u754c\u3060\u3051mixedBoundaryId\u3068\u3057\u3066\u6271\u3046\u3002"
                                }
                            },
                            "$comment": "\u914d\u5217\u8981\u7d20\u306f\u30de\u30b9\u30bf/CSV/option map\u306e\u52d5\u7684\u884c\u3067\u3042\u308a\u3001\u5217\u96c6\u5408\u304c\u5bfe\u8c61\u7a2e\u5225\u306b\u3088\u308a\u5909\u308f\u308b\u305f\u3081\u56fa\u5b9ashape\u5316\u3057\u306a\u3044\u3002\u65e2\u77e5property\u306f\u5951\u7d04\u3057\u3001\u8ffd\u52a0\u5217\u306f\u8a72\u5f53\u30b5\u30fc\u30d3\u30b9\u5883\u754c\u3067\u6271\u3046\u3002"
                        },
                        "minItems": 0
                    },
                    "rules": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u6a29\u9650\u30eb\u30fc\u30eb\u4e00\u89a7",
                        "description": "/admin/authority-role \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u6a29\u9650\u30eb\u30fc\u30eb\u4e00\u89a7\u3002\u914d\u5217\u8981\u7d20\u306fALPS\u610f\u5473\u3068Fake\u89b3\u5bdf\u306b\u57fa\u3065\u304d\u3001\u56fa\u5b9a\u3067\u304d\u306a\u3044\u52d5\u7684\u5217\u306f\u4f8b\u5916\u7406\u7531\u3092\u53f0\u5e33\u5316\u3059\u308b\u3002",
                        "items": {
                            "type": [
                                "object",
                                "null"
                            ],
                            "title": "\u6a29\u9650\u30eb\u30fc\u30eb",
                            "description": "/admin/authority-role \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u6a29\u9650\u30eb\u30fc\u30eb\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `rules` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002",
                            "properties": {
                                "authority": {
                                    "type": [
                                        "integer",
                                        "null"
                                    ],
                                    "minimum": 0,
                                    "maximum": 9,
                                    "title": "\u6a29\u9650",
                                    "description": "\u7ba1\u7406\u8005\u6a29\u9650\u30ec\u30d9\u30eb\u30020=\u30b7\u30b9\u30c6\u30e0\u7ba1\u7406\u8005\uff08\u6700\u9ad8\u6a29\u9650\u3001\u5168\u6a5f\u80fd\u30a2\u30af\u30bb\u30b9\u53ef\u80fd\uff09, 1=\u5e97\u8217\u30aa\u30fc\u30ca\u30fc\uff08\u5236\u9650\u3042\u308a\u3001denyUrl\u3067\u5236\u9650\u3055\u308c\u305fURL\u306b\u30a2\u30af\u30bb\u30b9\u4e0d\u53ef\uff09\u3002\u6570\u5024\u304c\u5c0f\u3055\u3044\u307b\u3069\u6a29\u9650\u304c\u9ad8\u3044\u3002AuthorityRole\u306eURL\u62d2\u5426\u30d1\u30bf\u30fc\u30f3\u3067\u30a2\u30af\u30bb\u30b9\u5236\u5fa1 Fake\u89b3\u5bdf\u6570\u5024 0\u301c1; \u89b3\u5bdf\u5024 '1', '0'\u3002",
                                    "example": 1
                                },
                                "denyUrl": {
                                    "title": "\u62d2\u5426URL",
                                    "description": "\u30a2\u30af\u30bb\u30b9\u3092\u62d2\u5426\u3059\u308b\u7ba1\u7406\u753b\u9762URL\u30d1\u30bf\u30fc\u30f3\u3002authority=1\uff08\u5e97\u8217\u30aa\u30fc\u30ca\u30fc\uff09\u306b\u5bfe\u3057\u3066\u9069\u7528",
                                    "type": "string",
                                    "format": "uri-reference",
                                    "minLength": 1,
                                    "maxLength": 2048,
                                    "example": "/products"
                                }
                            },
                            "$comment": "\u914d\u5217\u8981\u7d20\u306f\u30de\u30b9\u30bf/CSV/option map\u306e\u52d5\u7684\u884c\u3067\u3042\u308a\u3001\u5217\u96c6\u5408\u304c\u5bfe\u8c61\u7a2e\u5225\u306b\u3088\u308a\u5909\u308f\u308b\u305f\u3081\u56fa\u5b9ashape\u5316\u3057\u306a\u3044\u3002\u65e2\u77e5property\u306f\u5951\u7d04\u3057\u3001\u8ffd\u52a0\u5217\u306f\u8a72\u5f53\u30b5\u30fc\u30d3\u30b9\u5883\u754c\u3067\u6271\u3046\u3002"
                        },
                        "minItems": 0
                    },
                    "csrfToken": {
                        "$ref": "#/$defs/csrfToken"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "authorityOptions",
                    "rules",
                    "csrfToken"
                ]
            },
            "POST/admin/authority-roleResponse": {
                "title": "POST /admin/authority-role response",
                "description": "POST /admin/authority-role response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "message": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u51e6\u7406\u30e1\u30c3\u30bb\u30fc\u30b8",
                        "description": "/admin/authority-role \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u51e6\u7406\u7d50\u679c\u30e1\u30c3\u30bb\u30fc\u30b8\u3002\u6ce8\u6587\u6642\u304a\u554f\u3044\u5408\u308f\u305b\u6b04\u3067\u306f\u306a\u304f\u3001\u753b\u9762\u9077\u79fb\u3084\u5b8c\u4e86\u8868\u793a\u306e\u305f\u3081\u306e\u901a\u77e5\u6587\u3002",
                        "example": "\u914d\u9001\u306f\u5e73\u65e5\u5e0c\u671b\u3067\u3059\u3002"
                    },
                    "adminId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u7ba1\u7406\u8005ID",
                        "description": "\u7ba1\u7406\u8005\u30e1\u30f3\u30d0\u30fc\u3092\u8b58\u5225\u3059\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002Fake \u3068 SQL \u306e ID \u5f62\u72b6\u5dee\u3092\u96a0\u3059\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 32\u301c32; \u89b3\u5bdf\u5024 'ad000000000000000000000000000001', 'ad000000000000000000000000000002', 'ad000000000000000000000000000003', 'ad000000000000000000000000000004'\u3002",
                        "example": "ad000000000000000000000000000001",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    },
                    "loginId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u30ed\u30b0\u30a4\u30f3ID",
                        "description": "\u7ba1\u7406\u753b\u9762\u30ed\u30b0\u30a4\u30f3\u7528\u306eID\u3002\u4e00\u610f Fake\u89b3\u5bdf\u6587\u5b57\u9577 6\u301c13; \u89b3\u5bdf\u5024 'test-admin', 'shop-owner', 'deputy', 'deleted-admin', 'unknown-user'\u3002",
                        "example": "test-admin",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    },
                    "previousAuthority": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "title": "\u51e6\u7406\u6d3e\u751f\u9805\u76ee",
                        "description": "/admin/authority-role \u306e\u51e6\u7406\u6587\u8108\u304b\u3089\u6d3e\u751f\u3057\u305f\u51e6\u7406\u6d3e\u751f\u9805\u76ee\u3002ALPS\u57fa\u790e\u8a9e\u3060\u3051\u3067\u306f\u5358\u4f4d\u3084\u7528\u9014\u304c\u4e0d\u8db3\u3059\u308b\u305f\u3081\u3001\u3053\u306eResource\u4e0a\u306e\u610f\u5473\u3092\u660e\u793a\u3059\u308b\u3002",
                        "minimum": 0
                    },
                    "authority": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 9,
                        "title": "\u6a29\u9650",
                        "description": "\u7ba1\u7406\u8005\u6a29\u9650\u30ec\u30d9\u30eb\u30020=\u30b7\u30b9\u30c6\u30e0\u7ba1\u7406\u8005\uff08\u6700\u9ad8\u6a29\u9650\u3001\u5168\u6a5f\u80fd\u30a2\u30af\u30bb\u30b9\u53ef\u80fd\uff09, 1=\u5e97\u8217\u30aa\u30fc\u30ca\u30fc\uff08\u5236\u9650\u3042\u308a\u3001denyUrl\u3067\u5236\u9650\u3055\u308c\u305fURL\u306b\u30a2\u30af\u30bb\u30b9\u4e0d\u53ef\uff09\u3002\u6570\u5024\u304c\u5c0f\u3055\u3044\u307b\u3069\u6a29\u9650\u304c\u9ad8\u3044\u3002AuthorityRole\u306eURL\u62d2\u5426\u30d1\u30bf\u30fc\u30f3\u3067\u30a2\u30af\u30bb\u30b9\u5236\u5fa1 Fake\u89b3\u5bdf\u6570\u5024 0\u301c1; \u89b3\u5bdf\u5024 '1', '0'\u3002",
                        "example": 1
                    },
                    "changed": {
                        "type": "boolean",
                        "title": "\u51e6\u7406\u72b6\u614b\u30d5\u30e9\u30b0",
                        "description": "Fake\u89b3\u5bdf\u6570\u5024 1\u301c1; \u89b3\u5bdf\u5024 '1'\u3002",
                        "example": "1"
                    },
                    "transitionId": {
                        "$ref": "#/$defs/transitionId"
                    },
                    "count": {
                        "$ref": "#/$defs/nonNegativeInteger"
                    },
                    "rules": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u6a29\u9650\u30eb\u30fc\u30eb\u4e00\u89a7",
                        "description": "\u66f4\u65b0\u5f8c\u306e\u6a29\u9650URL\u62d2\u5426\u30eb\u30fc\u30eb\u4e00\u89a7\u3002",
                        "items": {
                            "type": [
                                "object",
                                "null"
                            ],
                            "properties": {
                                "authority": {
                                    "$ref": "#/properties/authority"
                                },
                                "denyUrl": {
                                    "$ref": "#/$defs/uriReference"
                                }
                            },
                            "additionalProperties": false
                        },
                        "minItems": 0
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": []
            },
            "GET/admin/base-infoResponse": {
                "title": "GET /admin/base-info response",
                "description": "GET /admin/base-info response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "form": {
                        "type": [
                            "object",
                            "array",
                            "null"
                        ],
                        "title": "\u5165\u529b\u30d5\u30a9\u30fc\u30e0",
                        "description": "Aura/WebForm\u7531\u6765\u306e\u30d5\u30a9\u30fc\u30e0\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3002\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5185\u90e8\u69cb\u9020\u306e\u305f\u3081schema\u3067\u306f\u5b58\u5728\u3068\u578b\u306e\u307f\u3092\u5951\u7d04\u3059\u308b\u3002",
                        "$comment": "Aura/WebForm\u7531\u6765\u306e\u4e0d\u900f\u660e\u30d5\u30a9\u30fc\u30e0\u8868\u73fe\u3002Resource\u5883\u754c\u3067\u306f\u30d5\u30a9\u30fc\u30e0\u306e\u5b58\u5728\u3068\u30b3\u30f3\u30c6\u30ad\u30b9\u30c8\u3060\u3051\u3092\u5951\u7d04\u3057\u3001\u5185\u90e8\u69cb\u9020\u306f\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5883\u754c\u306b\u59d4\u306d\u308b\u305f\u3081\u8ffd\u52a0\u30ad\u30fc\u5236\u7d04\u3092\u7f6e\u304b\u306a\u3044\u3002"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u3002Fake corpus\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3060\u304c\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3059\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c10; \u89b3\u5bdf\u5024 '0312345678', '0901234567', '0612345678'; null 18/33\u3002",
                        "type": [
                            "string",
                            "null"
                        ],
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "shopKana": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u30b7\u30e7\u30c3\u30d7\u540d\u30d5\u30ea\u30ac\u30ca",
                        "description": "\u30b7\u30e7\u30c3\u30d7\u540d\u306e\u30ab\u30bf\u30ab\u30ca\u8aad\u307f Fake\u89b3\u5bdf\u6587\u5b57\u9577 12\u301c12; \u89b3\u5bdf\u5024 '\u30a4\u30fc\u30b7\u30fc\u30ad\u30e5\u30fc\u30d6\u30b7\u30e7\u30c3\u30d7'\u3002",
                        "example": "\u30a4\u30fc\u30b7\u30fc\u30ad\u30e5\u30fc\u30d6\u30b7\u30e7\u30c3\u30d7"
                    },
                    "businessHour": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u55b6\u696d\u6642\u9593",
                        "description": "\u30b7\u30e7\u30c3\u30d7\u306e\u55b6\u696d\u6642\u9593\u3002\u30d5\u30ea\u30fc\u30d5\u30a9\u30fc\u30de\u30c3\u30c8 Fake\u89b3\u5bdf\u6587\u5b57\u9577 11\u301c11; \u89b3\u5bdf\u5024 '10:00-19:00'\u3002",
                        "example": "10:00-19:00"
                    },
                    "addr02": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u756a\u5730\u30fb\u5efa\u7269\u540d",
                        "description": "\u756a\u5730\u30fb\u30d3\u30eb\u540d\u30fb\u90e8\u5c4b\u756a\u53f7\u7b49\u306e\u8a73\u7d30\u4f4f\u6240 Fake\u89b3\u5bdf\u6587\u5b57\u9577 5\u301c8; \u89b3\u5bdf\u5024 '\u795e\u5bae\u524d1-1-1', '\u4e38\u306e\u51852-2-2', '\u6885\u75301-1-1', '1-2-3'; null 18/33\u3002",
                        "example": "\u795e\u5bae\u524d1-1-1"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u6709\u7121\u3092\u3069\u3061\u3089\u3082\u53d7\u3051\u5165\u308c\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 7\u301c8; \u89b3\u5bdf\u5024 '1500001', '1000005', '5300001', '530-0001'; null 18/33\u3002",
                        "type": [
                            "string",
                            "null"
                        ],
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770c",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u90fd\u9053\u5e9c\u770cID\u3002\u4f4f\u6240\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u72b6\u614b\u3067\u306f0\u3001\u78ba\u5b9a\u4f4f\u6240\u3067\u306f1\u301c47\u3092\u4f7f\u3046\u3002 Fake\u89b3\u5bdf\u6570\u5024 13\u301c27; \u89b3\u5bdf\u5024 '13', '27'; null 3/9\u3002",
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "addr01": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u5e02\u533a\u753a\u6751",
                        "description": "\u90fd\u9053\u5e9c\u770c\u3088\u308a\u4e0b\u4f4d\u306e\u5e02\u533a\u753a\u6751\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 3\u301c7; \u89b3\u5bdf\u5024 '\u6e0b\u8c37\u533a', '\u5343\u4ee3\u7530\u533a', '\u5927\u962a\u5e02\u5317\u533a', '\u5927\u962a\u5e02\u5317\u533a\u6885\u7530'; null 18/33\u3002",
                        "example": "\u6e0b\u8c37\u533a"
                    },
                    "shopEmail01": {
                        "title": "\u9001\u4fe1\u5143/BCC \u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u307b\u307c\u5168\u30e1\u30fc\u30eb\u7a2e\u5225\u306e\u9001\u4fe1\u5143\uff08From\uff09\u517c\u30b7\u30e7\u30c3\u30d7\u63a7\u3048\uff08BCC\uff09\u30a2\u30c9\u30ec\u30b9\u3002\u6ce8\u6587\u78ba\u8a8d\u30fb\u4f1a\u54e1\u767b\u9332\u30fb\u30d1\u30b9\u30ef\u30fc\u30c9\u30ea\u30bb\u30c3\u30c8\u7b49\u3067\u4f7f\u7528 Fake\u89b3\u5bdf\u6587\u5b57\u9577 16\u301c16; \u89b3\u5bdf\u5024 'shop@example.com'\u3002",
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "shop@example.com"
                    },
                    "shopName": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u30b7\u30e7\u30c3\u30d7\u540d",
                        "description": "\u30b7\u30e7\u30c3\u30d7\u306e\u8868\u793a\u540d\u3002\u30d5\u30ed\u30f3\u30c8\u753b\u9762\u306e\u30d8\u30c3\u30c0\u3084\u30e1\u30fc\u30eb\u306b\u8868\u793a Fake\u89b3\u5bdf\u6587\u5b57\u9577 12\u301c12; \u89b3\u5bdf\u5024 'EC-CUBE SHOP'\u3002",
                        "example": "EC-CUBE SHOP"
                    },
                    "companyName": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u4f1a\u793e\u540d",
                        "description": "\u6cd5\u4eba\u9867\u5ba2\u306e\u793e\u540d\u3002B2B\u53d6\u5f15\u3084\u30a4\u30f3\u30dc\u30a4\u30b9\u3067\u4f7f\u7528 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c11; \u89b3\u5bdf\u5024 'Acme Corp.', '\u682a\u5f0f\u4f1a\u793eEC-CUBE'; null 24/32\u3002",
                        "example": "Acme Corp."
                    },
                    "shopMessage": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 2000,
                        "title": "\u30b7\u30e7\u30c3\u30d7\u30e1\u30c3\u30bb\u30fc\u30b8",
                        "description": "\u300c\u5f53\u30b5\u30a4\u30c8\u306b\u3064\u3044\u3066\u300d\u30da\u30fc\u30b8\uff08Help/about.twig\uff09\u306b\u8868\u793a\u3059\u308b\u5e97\u8217\u304b\u3089\u306e\u30e1\u30c3\u30bb\u30fc\u30b8 Fake\u89b3\u5bdf\u6587\u5b57\u9577 20\u301c20; \u89b3\u5bdf\u5024 '\u3088\u3046\u3053\u305d\u3001EC-CUBE SHOP \u3078\u3002'\u3002",
                        "example": "\u3088\u3046\u3053\u305d\u3001EC-CUBE SHOP \u3078\u3002"
                    },
                    "shopNameEng": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u30b7\u30e7\u30c3\u30d7\u540d\u82f1\u8a9e",
                        "description": "\u30b7\u30e7\u30c3\u30d7\u306e\u82f1\u8a9e\u540d\u3002\u591a\u8a00\u8a9e\u5bfe\u5fdc\u3084\u30e1\u30fc\u30eb\u7f72\u540d\u7b49\u3067\u4f7f\u7528 Fake\u89b3\u5bdf\u6587\u5b57\u9577 12\u301c12; \u89b3\u5bdf\u5024 'EC-CUBE SHOP'\u3002",
                        "example": "EC-CUBE SHOP"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "csrfToken",
                    "shopKana",
                    "businessHour",
                    "addr01",
                    "shopEmail01",
                    "shopName",
                    "shopMessage",
                    "shopNameEng"
                ]
            },
            "POST/admin/base-infoResponse": {
                "title": "POST /admin/base-info response",
                "description": "POST /admin/base-info response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u3002Fake corpus\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3060\u304c\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3059\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c10; \u89b3\u5bdf\u5024 '0312345678', '0901234567', '0612345678'; null 18/33\u3002",
                        "type": [
                            "string",
                            "null"
                        ],
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "shopKana": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u30b7\u30e7\u30c3\u30d7\u540d\u30d5\u30ea\u30ac\u30ca",
                        "description": "\u30b7\u30e7\u30c3\u30d7\u540d\u306e\u30ab\u30bf\u30ab\u30ca\u8aad\u307f Fake\u89b3\u5bdf\u6587\u5b57\u9577 12\u301c12; \u89b3\u5bdf\u5024 '\u30a4\u30fc\u30b7\u30fc\u30ad\u30e5\u30fc\u30d6\u30b7\u30e7\u30c3\u30d7'\u3002",
                        "example": "\u30a4\u30fc\u30b7\u30fc\u30ad\u30e5\u30fc\u30d6\u30b7\u30e7\u30c3\u30d7"
                    },
                    "changed": {
                        "type": [
                            "boolean",
                            "null"
                        ],
                        "title": "\u51e6\u7406\u72b6\u614b\u30d5\u30e9\u30b0",
                        "description": "Fake\u89b3\u5bdf\u6570\u5024 1\u301c1; \u89b3\u5bdf\u5024 '1'\u3002",
                        "example": "1"
                    },
                    "businessHour": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u55b6\u696d\u6642\u9593",
                        "description": "\u30b7\u30e7\u30c3\u30d7\u306e\u55b6\u696d\u6642\u9593\u3002\u30d5\u30ea\u30fc\u30d5\u30a9\u30fc\u30de\u30c3\u30c8 Fake\u89b3\u5bdf\u6587\u5b57\u9577 11\u301c11; \u89b3\u5bdf\u5024 '10:00-19:00'\u3002",
                        "example": "10:00-19:00"
                    },
                    "addr02": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u756a\u5730\u30fb\u5efa\u7269\u540d",
                        "description": "\u756a\u5730\u30fb\u30d3\u30eb\u540d\u30fb\u90e8\u5c4b\u756a\u53f7\u7b49\u306e\u8a73\u7d30\u4f4f\u6240 Fake\u89b3\u5bdf\u6587\u5b57\u9577 5\u301c8; \u89b3\u5bdf\u5024 '\u795e\u5bae\u524d1-1-1', '\u4e38\u306e\u51852-2-2', '\u6885\u75301-1-1', '1-2-3'; null 18/33\u3002",
                        "example": "\u795e\u5bae\u524d1-1-1"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u6709\u7121\u3092\u3069\u3061\u3089\u3082\u53d7\u3051\u5165\u308c\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 7\u301c8; \u89b3\u5bdf\u5024 '1500001', '1000005', '5300001', '530-0001'; null 18/33\u3002",
                        "type": [
                            "string",
                            "null"
                        ],
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770c",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u90fd\u9053\u5e9c\u770cID\u3002\u4f4f\u6240\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u72b6\u614b\u3067\u306f0\u3001\u78ba\u5b9a\u4f4f\u6240\u3067\u306f1\u301c47\u3092\u4f7f\u3046\u3002 Fake\u89b3\u5bdf\u6570\u5024 13\u301c27; \u89b3\u5bdf\u5024 '13', '27'; null 3/9\u3002",
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "addr01": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u5e02\u533a\u753a\u6751",
                        "description": "\u90fd\u9053\u5e9c\u770c\u3088\u308a\u4e0b\u4f4d\u306e\u5e02\u533a\u753a\u6751\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 3\u301c7; \u89b3\u5bdf\u5024 '\u6e0b\u8c37\u533a', '\u5343\u4ee3\u7530\u533a', '\u5927\u962a\u5e02\u5317\u533a', '\u5927\u962a\u5e02\u5317\u533a\u6885\u7530'; null 18/33\u3002",
                        "example": "\u6e0b\u8c37\u533a"
                    },
                    "shopEmail01": {
                        "title": "\u9001\u4fe1\u5143/BCC \u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u307b\u307c\u5168\u30e1\u30fc\u30eb\u7a2e\u5225\u306e\u9001\u4fe1\u5143\uff08From\uff09\u517c\u30b7\u30e7\u30c3\u30d7\u63a7\u3048\uff08BCC\uff09\u30a2\u30c9\u30ec\u30b9\u3002\u6ce8\u6587\u78ba\u8a8d\u30fb\u4f1a\u54e1\u767b\u9332\u30fb\u30d1\u30b9\u30ef\u30fc\u30c9\u30ea\u30bb\u30c3\u30c8\u7b49\u3067\u4f7f\u7528 Fake\u89b3\u5bdf\u6587\u5b57\u9577 16\u301c16; \u89b3\u5bdf\u5024 'shop@example.com'\u3002",
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "shop@example.com"
                    },
                    "shopName": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u30b7\u30e7\u30c3\u30d7\u540d",
                        "description": "\u30b7\u30e7\u30c3\u30d7\u306e\u8868\u793a\u540d\u3002\u30d5\u30ed\u30f3\u30c8\u753b\u9762\u306e\u30d8\u30c3\u30c0\u3084\u30e1\u30fc\u30eb\u306b\u8868\u793a Fake\u89b3\u5bdf\u6587\u5b57\u9577 12\u301c12; \u89b3\u5bdf\u5024 'EC-CUBE SHOP'\u3002",
                        "example": "EC-CUBE SHOP"
                    },
                    "companyName": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u4f1a\u793e\u540d",
                        "description": "\u6cd5\u4eba\u9867\u5ba2\u306e\u793e\u540d\u3002B2B\u53d6\u5f15\u3084\u30a4\u30f3\u30dc\u30a4\u30b9\u3067\u4f7f\u7528 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c11; \u89b3\u5bdf\u5024 'Acme Corp.', '\u682a\u5f0f\u4f1a\u793eEC-CUBE'; null 24/32\u3002",
                        "example": "Acme Corp."
                    },
                    "shopMessage": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 2000,
                        "title": "\u30b7\u30e7\u30c3\u30d7\u30e1\u30c3\u30bb\u30fc\u30b8",
                        "description": "\u300c\u5f53\u30b5\u30a4\u30c8\u306b\u3064\u3044\u3066\u300d\u30da\u30fc\u30b8\uff08Help/about.twig\uff09\u306b\u8868\u793a\u3059\u308b\u5e97\u8217\u304b\u3089\u306e\u30e1\u30c3\u30bb\u30fc\u30b8 Fake\u89b3\u5bdf\u6587\u5b57\u9577 20\u301c20; \u89b3\u5bdf\u5024 '\u3088\u3046\u3053\u305d\u3001EC-CUBE SHOP \u3078\u3002'\u3002",
                        "example": "\u3088\u3046\u3053\u305d\u3001EC-CUBE SHOP \u3078\u3002"
                    },
                    "shopNameEng": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u30b7\u30e7\u30c3\u30d7\u540d\u82f1\u8a9e",
                        "description": "\u30b7\u30e7\u30c3\u30d7\u306e\u82f1\u8a9e\u540d\u3002\u591a\u8a00\u8a9e\u5bfe\u5fdc\u3084\u30e1\u30fc\u30eb\u7f72\u540d\u7b49\u3067\u4f7f\u7528 Fake\u89b3\u5bdf\u6587\u5b57\u9577 12\u301c12; \u89b3\u5bdf\u5024 'EC-CUBE SHOP'\u3002",
                        "example": "EC-CUBE SHOP"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "shopKana",
                    "changed",
                    "businessHour",
                    "addr01",
                    "shopEmail01",
                    "shopName",
                    "shopMessage",
                    "shopNameEng"
                ]
            },
            "GET/admin/calendarResponse": {
                "title": "GET /admin/calendar response",
                "description": "GET /admin/calendar response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "form": {
                        "type": [
                            "object",
                            "array",
                            "null"
                        ],
                        "title": "\u5165\u529b\u30d5\u30a9\u30fc\u30e0",
                        "description": "Aura/WebForm\u7531\u6765\u306e\u30d5\u30a9\u30fc\u30e0\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3002\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5185\u90e8\u69cb\u9020\u306e\u305f\u3081schema\u3067\u306f\u5b58\u5728\u3068\u578b\u306e\u307f\u3092\u5951\u7d04\u3059\u308b\u3002",
                        "$comment": "Aura/WebForm\u7531\u6765\u306e\u4e0d\u900f\u660e\u30d5\u30a9\u30fc\u30e0\u8868\u73fe\u3002Resource\u5883\u754c\u3067\u306f\u30d5\u30a9\u30fc\u30e0\u306e\u5b58\u5728\u3068\u30b3\u30f3\u30c6\u30ad\u30b9\u30c8\u3060\u3051\u3092\u5951\u7d04\u3057\u3001\u5185\u90e8\u69cb\u9020\u306f\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5883\u754c\u306b\u59d4\u306d\u308b\u305f\u3081\u8ffd\u52a0\u30ad\u30fc\u5236\u7d04\u3092\u7f6e\u304b\u306a\u3044\u3002"
                    },
                    "calendars": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u30ab\u30ec\u30f3\u30c0\u30fc\u4e00\u89a7",
                        "description": "/admin/calendar \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u30ab\u30ec\u30f3\u30c0\u30fc\u4e00\u89a7\u3002\u914d\u5217\u8981\u7d20\u306fALPS\u610f\u5473\u3068Fake\u89b3\u5bdf\u306b\u57fa\u3065\u304d\u3001\u56fa\u5b9a\u3067\u304d\u306a\u3044\u52d5\u7684\u5217\u306f\u4f8b\u5916\u7406\u7531\u3092\u53f0\u5e33\u5316\u3059\u308b\u3002",
                        "items": {
                            "type": [
                                "object",
                                "null"
                            ],
                            "title": "\u30ab\u30ec\u30f3\u30c0\u30fc\u884c",
                            "description": "/admin/calendar \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u30ab\u30ec\u30f3\u30c0\u30fc\u884c\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `calendars` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002",
                            "properties": {
                                "form": {
                                    "type": [
                                        "object",
                                        "array",
                                        "null"
                                    ],
                                    "title": "\u5165\u529b\u30d5\u30a9\u30fc\u30e0",
                                    "description": "Aura/WebForm\u7531\u6765\u306e\u30d5\u30a9\u30fc\u30e0\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3002\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5185\u90e8\u69cb\u9020\u306e\u305f\u3081schema\u3067\u306f\u5b58\u5728\u3068\u578b\u306e\u307f\u3092\u5951\u7d04\u3059\u308b\u3002",
                                    "$comment": "Aura/WebForm\u7531\u6765\u306e\u4e0d\u900f\u660e\u30d5\u30a9\u30fc\u30e0\u8868\u73fe\u3002Resource\u5883\u754c\u3067\u306f\u30d5\u30a9\u30fc\u30e0\u306e\u5b58\u5728\u3068\u30b3\u30f3\u30c6\u30ad\u30b9\u30c8\u3060\u3051\u3092\u5951\u7d04\u3057\u3001\u5185\u90e8\u69cb\u9020\u306f\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5883\u754c\u306b\u59d4\u306d\u308b\u305f\u3081\u8ffd\u52a0\u30ad\u30fc\u5236\u7d04\u3092\u7f6e\u304b\u306a\u3044\u3002"
                                },
                                "title": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 255,
                                    "title": "\u51e6\u7406\u30bf\u30a4\u30c8\u30eb",
                                    "description": "/admin/calendar \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8868\u793a\u307e\u305f\u306f\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u63cf\u753b\u306b\u4f7f\u3046\u51e6\u7406\u30bf\u30a4\u30c8\u30eb\u3002\u540c\u540dproperty\u3067\u3082\u89aa\u6587\u8108 `root` \u306b\u3088\u3063\u3066\u610f\u5473\u3092\u5206\u3051\u308b\u3002"
                                },
                                "id": {
                                    "type": [
                                        "string",
                                        "integer",
                                        "null"
                                    ],
                                    "title": "ID",
                                    "description": "Fake\u89b3\u5bdf\u6587\u5b57\u9577 13\u301c32; \u89b3\u5bdf\u5024 'ad000000000000000000000000000001', 'ad000000000000000000000000000003', 'fedcba9876543210fedcba9876543210', '10000000aaaa1111bbbb2222cccc3333', 'ad000000000000000000000000000002', '0123456789abcdef0123456789abcdef', 'aaaaaaaa00000000bbbbbbbb11111111', '20000000dddd2222eeee3333ffff4444'\u3002",
                                    "example": "ad000000000000000000000000000001",
                                    "minLength": 0,
                                    "maxLength": 128,
                                    "$comment": "Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u305f\u3081\u3001\u3053\u306e\u5883\u754c\u3060\u3051mixedBoundaryId\u3068\u3057\u3066\u6271\u3046\u3002"
                                },
                                "hasError": {
                                    "type": [
                                        "boolean",
                                        "null"
                                    ],
                                    "title": "\u30a8\u30e9\u30fc\u6709\u7121",
                                    "description": "/admin/calendar \u306e\u51e6\u7406\u72b6\u614b\u3092\u793a\u3059\u30a8\u30e9\u30fc\u6709\u7121\u3002\u753b\u9762\u8868\u793a\u3084\u51aa\u7b49\u51e6\u7406\u7d50\u679c\u306e\u5206\u5c90\u306b\u4f7f\u3046\u771f\u507d\u5024\u3002"
                                },
                                "holiday": {
                                    "type": [
                                        "string",
                                        "integer",
                                        "null"
                                    ],
                                    "maximum": 2147483647,
                                    "title": "\u4f11\u65e5\u6307\u5b9a",
                                    "description": "/admin/calendar \u306e\u51e6\u7406\u6587\u8108\u304b\u3089\u6d3e\u751f\u3057\u305f\u4f11\u65e5\u6307\u5b9a\u3002ALPS\u57fa\u790e\u8a9e\u3060\u3051\u3067\u306f\u5358\u4f4d\u3084\u7528\u9014\u304c\u4e0d\u8db3\u3059\u308b\u305f\u3081\u3001\u3053\u306eResource\u4e0a\u306e\u610f\u5473\u3092\u660e\u793a\u3059\u308b\u3002",
                                    "minLength": 0,
                                    "maxLength": 64,
                                    "$comment": "EC-CUBE\u4e92\u63db\u306e\u30d5\u30a9\u30fc\u30e0/\u4e00\u89a7\u5883\u754c\u3067\u6570\u5024\u3068\u6587\u5b57\u5217\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u3002\u696d\u52d9\u89e3\u91c8\u306fResource/Semantic\u5c64\u3067\u884c\u3046\u3002"
                                }
                            },
                            "additionalProperties": false,
                            "$comment": "\u914d\u5217\u8981\u7d20\u306fFake/Resource\u3067\u89b3\u5bdf\u3055\u308c\u305f\u65e2\u77e5property\u306b\u56fa\u5b9a\u3059\u308b\u3002\u65b0\u3057\u3044\u5217\u304c\u5fc5\u8981\u306b\u306a\u3063\u305f\u5834\u5408\u306fSemantic-Ex\u89b3\u5bdf\u306b\u8ffd\u52a0\u3057\u3066schema\u3092\u66f4\u65b0\u3059\u308b\u3002"
                        },
                        "minItems": 0
                    },
                    "errors": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u691c\u8a3c\u30a8\u30e9\u30fc",
                        "description": "/admin/calendar \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u691c\u8a3c\u30a8\u30e9\u30fc\u3002ALPS\u3001Fake\u89b3\u5bdf\u3001Resource\u5883\u754c\u306e\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305f\u696d\u52d9\u5951\u7d04\u3002",
                        "items": {
                            "type": "string",
                            "title": "\u30a8\u30e9\u30fc\u30e1\u30c3\u30bb\u30fc\u30b8",
                            "minLength": 0,
                            "maxLength": 1000,
                            "description": "/admin/calendar \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u51e6\u7406\u884c\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `errors` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002"
                        }
                    },
                    "csrfToken": {
                        "$ref": "#/$defs/csrfToken"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "calendars"
                ]
            },
            "POST/admin/calendarResponse": {
                "title": "POST /admin/calendar response",
                "description": "POST /admin/calendar response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "title": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 255,
                        "title": "\u51e6\u7406\u30bf\u30a4\u30c8\u30eb",
                        "description": "/admin/calendar \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8868\u793a\u307e\u305f\u306f\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u63cf\u753b\u306b\u4f7f\u3046\u51e6\u7406\u30bf\u30a4\u30c8\u30eb\u3002\u540c\u540dproperty\u3067\u3082\u89aa\u6587\u8108 `root` \u306b\u3088\u3063\u3066\u610f\u5473\u3092\u5206\u3051\u308b\u3002"
                    },
                    "message": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u51e6\u7406\u30e1\u30c3\u30bb\u30fc\u30b8",
                        "description": "/admin/calendar \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u51e6\u7406\u7d50\u679c\u30e1\u30c3\u30bb\u30fc\u30b8\u3002\u6ce8\u6587\u6642\u304a\u554f\u3044\u5408\u308f\u305b\u6b04\u3067\u306f\u306a\u304f\u3001\u753b\u9762\u9077\u79fb\u3084\u5b8c\u4e86\u8868\u793a\u306e\u305f\u3081\u306e\u901a\u77e5\u6587\u3002",
                        "example": "\u914d\u9001\u306f\u5e73\u65e5\u5e0c\u671b\u3067\u3059\u3002"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "\u3053\u306e\u30ec\u30b9\u30dd\u30f3\u30b9/\u64cd\u4f5c\u304c\u5bfe\u5fdc\u3059\u308bALPS\u9077\u79fbID\u3002\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u306e\u72b6\u614b\u9077\u79fb\u8ffd\u8de1\u306b\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "calendarId": {
                        "type": [
                            "string",
                            "integer",
                            "null"
                        ],
                        "title": "\u30ab\u30ec\u30f3\u30c0\u30fcID",
                        "description": "/admin/calendar \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u5bfe\u8c61\u3092\u8b58\u5225\u3059\u308b\u30ab\u30ec\u30f3\u30c0\u30fcID\u3002DB\u63a1\u756aID\u3001Fake\u6587\u5b57\u5217ID\u3001\u4e92\u63db\u5883\u754cID\u306e\u3069\u308c\u306b\u8a72\u5f53\u3059\u308b\u304b\u3092schema\u306e\u578b\u3068\u30b3\u30e1\u30f3\u30c8\u3067\u5206\u3051\u308b\u3002",
                        "minLength": 0,
                        "maxLength": 128,
                        "$comment": "Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u305f\u3081\u3001\u3053\u306e\u5883\u754c\u3060\u3051mixedBoundaryId\u3068\u3057\u3066\u6271\u3046\u3002"
                    },
                    "holiday": {
                        "type": [
                            "string",
                            "integer",
                            "null"
                        ],
                        "maximum": 2147483647,
                        "title": "\u4f11\u65e5\u6307\u5b9a",
                        "description": "/admin/calendar \u306e\u51e6\u7406\u6587\u8108\u304b\u3089\u6d3e\u751f\u3057\u305f\u4f11\u65e5\u6307\u5b9a\u3002ALPS\u57fa\u790e\u8a9e\u3060\u3051\u3067\u306f\u5358\u4f4d\u3084\u7528\u9014\u304c\u4e0d\u8db3\u3059\u308b\u305f\u3081\u3001\u3053\u306eResource\u4e0a\u306e\u610f\u5473\u3092\u660e\u793a\u3059\u308b\u3002",
                        "minLength": 0,
                        "maxLength": 64,
                        "$comment": "EC-CUBE\u4e92\u63db\u306e\u30d5\u30a9\u30fc\u30e0/\u4e00\u89a7\u5883\u754c\u3067\u6570\u5024\u3068\u6587\u5b57\u5217\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u3002\u696d\u52d9\u89e3\u91c8\u306fResource/Semantic\u5c64\u3067\u884c\u3046\u3002"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "title",
                    "transitionId",
                    "calendarId",
                    "holiday"
                ]
            },
            "DELETE/admin/calendarResponse": {
                "title": "DELETE /admin/calendar response",
                "description": "DELETE /admin/calendar response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "message": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u51e6\u7406\u30e1\u30c3\u30bb\u30fc\u30b8",
                        "description": "/admin/calendar \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u51e6\u7406\u7d50\u679c\u30e1\u30c3\u30bb\u30fc\u30b8\u3002\u6ce8\u6587\u6642\u304a\u554f\u3044\u5408\u308f\u305b\u6b04\u3067\u306f\u306a\u304f\u3001\u753b\u9762\u9077\u79fb\u3084\u5b8c\u4e86\u8868\u793a\u306e\u305f\u3081\u306e\u901a\u77e5\u6587\u3002",
                        "example": "\u914d\u9001\u306f\u5e73\u65e5\u5e0c\u671b\u3067\u3059\u3002"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "\u3053\u306e\u30ec\u30b9\u30dd\u30f3\u30b9/\u64cd\u4f5c\u304c\u5bfe\u5fdc\u3059\u308bALPS\u9077\u79fbID\u3002\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u306e\u72b6\u614b\u9077\u79fb\u8ffd\u8de1\u306b\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "calendarId": {
                        "type": [
                            "string",
                            "integer",
                            "null"
                        ],
                        "title": "\u30ab\u30ec\u30f3\u30c0\u30fcID",
                        "description": "/admin/calendar \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u5bfe\u8c61\u3092\u8b58\u5225\u3059\u308b\u30ab\u30ec\u30f3\u30c0\u30fcID\u3002DB\u63a1\u756aID\u3001Fake\u6587\u5b57\u5217ID\u3001\u4e92\u63db\u5883\u754cID\u306e\u3069\u308c\u306b\u8a72\u5f53\u3059\u308b\u304b\u3092schema\u306e\u578b\u3068\u30b3\u30e1\u30f3\u30c8\u3067\u5206\u3051\u308b\u3002",
                        "minLength": 0,
                        "maxLength": 128,
                        "$comment": "Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u305f\u3081\u3001\u3053\u306e\u5883\u754c\u3060\u3051mixedBoundaryId\u3068\u3057\u3066\u6271\u3046\u3002"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "transitionId",
                    "calendarId"
                ]
            },
            "GET/admin/change-passwordResponse": {
                "title": "GET /admin/change-password response",
                "description": "GET /admin/change-password response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "form": {
                        "type": [
                            "object",
                            "array",
                            "null"
                        ],
                        "title": "\u5165\u529b\u30d5\u30a9\u30fc\u30e0",
                        "description": "Aura/WebForm\u7531\u6765\u306e\u30d5\u30a9\u30fc\u30e0\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3002\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5185\u90e8\u69cb\u9020\u306e\u305f\u3081schema\u3067\u306f\u5b58\u5728\u3068\u578b\u306e\u307f\u3092\u5951\u7d04\u3059\u308b\u3002",
                        "$comment": "Aura/WebForm\u7531\u6765\u306e\u4e0d\u900f\u660e\u30d5\u30a9\u30fc\u30e0\u8868\u73fe\u3002Resource\u5883\u754c\u3067\u306f\u30d5\u30a9\u30fc\u30e0\u306e\u5b58\u5728\u3068\u30b3\u30f3\u30c6\u30ad\u30b9\u30c8\u3060\u3051\u3092\u5951\u7d04\u3057\u3001\u5185\u90e8\u69cb\u9020\u306f\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5883\u754c\u306b\u59d4\u306d\u308b\u305f\u3081\u8ffd\u52a0\u30ad\u30fc\u5236\u7d04\u3092\u7f6e\u304b\u306a\u3044\u3002"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "\u3053\u306e\u30ec\u30b9\u30dd\u30f3\u30b9/\u64cd\u4f5c\u304c\u5bfe\u5fdc\u3059\u308bALPS\u9077\u79fbID\u3002\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u306e\u72b6\u614b\u9077\u79fb\u8ffd\u8de1\u306b\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "fields": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u9759\u7684\u8868\u793a\u30d5\u30a3\u30fc\u30eb\u30c9",
                        "description": "/admin/change-password \u3067\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u3078\u6e21\u3059\u8868\u793a\u7528\u30d5\u30a3\u30fc\u30eb\u30c9\u96c6\u5408\u3002\u30d5\u30a9\u30fc\u30e0\u5165\u529b\u5024\u3067\u306f\u306a\u304f\u753b\u9762\u6587\u8108\u30c7\u30fc\u30bf\u3002",
                        "items": {
                            "type": "string",
                            "title": "\u8868\u793a\u30d5\u30a3\u30fc\u30eb\u30c9",
                            "minLength": 0,
                            "maxLength": 255,
                            "description": "/admin/change-password \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u51e6\u7406\u884c\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `fields` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002"
                        }
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "csrfToken",
                    "transitionId"
                ]
            },
            "POST/admin/change-passwordResponse": {
                "title": "POST /admin/change-password response",
                "description": "POST /admin/change-password response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "message": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u51e6\u7406\u30e1\u30c3\u30bb\u30fc\u30b8",
                        "description": "/admin/change-password \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u51e6\u7406\u7d50\u679c\u30e1\u30c3\u30bb\u30fc\u30b8\u3002\u6ce8\u6587\u6642\u304a\u554f\u3044\u5408\u308f\u305b\u6b04\u3067\u306f\u306a\u304f\u3001\u753b\u9762\u9077\u79fb\u3084\u5b8c\u4e86\u8868\u793a\u306e\u305f\u3081\u306e\u901a\u77e5\u6587\u3002",
                        "example": "\u914d\u9001\u306f\u5e73\u65e5\u5e0c\u671b\u3067\u3059\u3002"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "\u3053\u306e\u30ec\u30b9\u30dd\u30f3\u30b9/\u64cd\u4f5c\u304c\u5bfe\u5fdc\u3059\u308bALPS\u9077\u79fbID\u3002\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u306e\u72b6\u614b\u9077\u79fb\u8ffd\u8de1\u306b\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "loginId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u30ed\u30b0\u30a4\u30f3ID",
                        "description": "\u7ba1\u7406\u753b\u9762\u30ed\u30b0\u30a4\u30f3\u7528\u306eID\u3002\u4e00\u610f Fake\u89b3\u5bdf\u6587\u5b57\u9577 6\u301c13; \u89b3\u5bdf\u5024 'test-admin', 'shop-owner', 'deputy', 'deleted-admin', 'unknown-user'\u3002",
                        "example": "test-admin",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    },
                    "adminId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u7ba1\u7406\u8005ID",
                        "description": "\u7ba1\u7406\u8005\u30e1\u30f3\u30d0\u30fc\u3092\u8b58\u5225\u3059\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002Fake \u3068 SQL \u306e ID \u5f62\u72b6\u5dee\u3092\u96a0\u3059\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 32\u301c32; \u89b3\u5bdf\u5024 'ad000000000000000000000000000001', 'ad000000000000000000000000000002', 'ad000000000000000000000000000003', 'ad000000000000000000000000000004'\u3002",
                        "example": "ad000000000000000000000000000001",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "transitionId",
                    "loginId",
                    "adminId"
                ]
            },
            "POST/admin/create-customerResponse": {
                "title": "POST /admin/create-customer response",
                "description": "POST /admin/create-customer response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "name01": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 80,
                        "title": "\u59d3",
                        "description": "\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u30fb\u304a\u554f\u3044\u5408\u308f\u305b\u3067\u5171\u901a\u4f7f\u7528\u3055\u308c\u308b\u59d3 Fake\u89b3\u5bdf\u6587\u5b57\u9577 2\u301c2; \u89b3\u5bdf\u5024 '\u9234\u6728', '\u5c71\u7530', '\u4f50\u85e4', '\u9ad8\u6a4b', '\u9000\u4f1a'\u3002",
                        "example": "\u9234\u6728"
                    },
                    "customerId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u4f1a\u54e1ID",
                        "description": "dtb_customer.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e Entity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\uff08\u30de\u30b9\u30a2\u30b5\u30a4\u30f3\u30e1\u30f3\u30c8\u9632\u6b62\u306e\u305f\u3081\u3001Session/AuthZ \u7d4c\u7531\u3067\u8aad\u307f\u51fa\u3057\u3001\u30ea\u30af\u30a8\u30b9\u30c8\u672c\u6587\u304b\u3089\u306f\u53d7\u3051\u53d6\u3089\u306a\u3044\uff09\u3002Favorite / Cart / Order \u306e\u6240\u6709\u8005\u30ad\u30fc\u3068\u3057\u3066\u6a2a\u65ad\u4f7f\u7528 Fake\u89b3\u5bdf\u6587\u5b57\u9577 12\u301c32; \u89b3\u5bdf\u5024 'customer-001', '0123456789abcdef0123456789abcdef', 'customer-002', 'favorite-list-customer', 'favorite-html-customer', 'fedcba9876543210fedcba9876543210', 'aaaaaaaa00000000bbbbbbbb11111111', '10000000aaaa1111bbbb2222cccc3333'\u3002",
                        "example": "customer-001",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b Fake\u89b3\u5bdf\u6570\u5024 1\u301c2; \u89b3\u5bdf\u5024 '2', '1'\u3002",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u3002\u4f1a\u54e1\u767b\u9332\u30fb\u30ed\u30b0\u30a4\u30f3\u30fb\u901a\u77e5\u3067\u5171\u901a\u306b\u4f7f\u3046\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 15\u301c58; \u89b3\u5bdf\u5024 'bob@example.com', 'login-test@example.com', 'alice@example.com', 'carol@example.com', 'provisional@example.com', 'withdrawn-30000000aaaa3333bbbb4444cccc5555@example.invalid'\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "initialPoint": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 2147483647,
                        "title": "\u521d\u671f\u30dd\u30a4\u30f3\u30c8",
                        "description": "Fake\u89b3\u5bdf\u6570\u5024 100\u301c100; \u89b3\u5bdf\u5024 '100'\u3002",
                        "example": 100
                    },
                    "name02": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 80,
                        "title": "\u540d",
                        "description": "\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u30fb\u304a\u554f\u3044\u5408\u308f\u305b\u3067\u5171\u901a\u4f7f\u7528\u3055\u308c\u308b\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 1\u301c3; \u89b3\u5bdf\u5024 '\u30a2\u30ea\u30b9', '\u592a\u90ce', '\u6b21\u90ce', '\u82b1\u5b50', '\u4e09\u90ce', '\u6e08'\u3002",
                        "example": "\u30a2\u30ea\u30b9"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "name01",
                    "customerId",
                    "customerStatus",
                    "email",
                    "initialPoint",
                    "name02"
                ]
            },
            "GET/admin/csv-configResponse": {
                "title": "GET /admin/csv-config response",
                "description": "GET /admin/csv-config response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "form": {
                        "type": [
                            "object",
                            "array",
                            "null"
                        ],
                        "title": "\u5165\u529b\u30d5\u30a9\u30fc\u30e0",
                        "description": "Aura/WebForm\u7531\u6765\u306e\u30d5\u30a9\u30fc\u30e0\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3002\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5185\u90e8\u69cb\u9020\u306e\u305f\u3081schema\u3067\u306f\u5b58\u5728\u3068\u578b\u306e\u307f\u3092\u5951\u7d04\u3059\u308b\u3002",
                        "$comment": "Aura/WebForm\u7531\u6765\u306e\u4e0d\u900f\u660e\u30d5\u30a9\u30fc\u30e0\u8868\u73fe\u3002Resource\u5883\u754c\u3067\u306f\u30d5\u30a9\u30fc\u30e0\u306e\u5b58\u5728\u3068\u30b3\u30f3\u30c6\u30ad\u30b9\u30c8\u3060\u3051\u3092\u5951\u7d04\u3057\u3001\u5185\u90e8\u69cb\u9020\u306f\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5883\u754c\u306b\u59d4\u306d\u308b\u305f\u3081\u8ffd\u52a0\u30ad\u30fc\u5236\u7d04\u3092\u7f6e\u304b\u306a\u3044\u3002"
                    },
                    "notOutputColumns": {
                        "type": [
                            "object",
                            "null"
                        ],
                        "title": "\u975e\u51fa\u529bCSV\u5217",
                        "description": "/admin/csv-config \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u975e\u51fa\u529bCSV\u5217\u3002ALPS\u3001Fake\u89b3\u5bdf\u3001Resource\u5883\u754c\u306e\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305f\u696d\u52d9\u5951\u7d04\u3002",
                        "properties": {
                            "paymentMethod": {
                                "type": [
                                    "string",
                                    "null"
                                ],
                                "minLength": 0,
                                "maxLength": 255,
                                "title": "\u652f\u6255\u65b9\u6cd5",
                                "description": "\u6ce8\u6587\u6642\u70b9\u306e\u652f\u6255\u65b9\u6cd5\u540d\u79f0\uff08\u30b9\u30ca\u30c3\u30d7\u30b7\u30e7\u30c3\u30c8\uff09 Fake\u89b3\u5bdf\u6587\u5b57\u9577 4\u301c4; \u89b3\u5bdf\u5024 '\u9280\u884c\u632f\u8fbc'\u3002",
                                "example": "\u9280\u884c\u632f\u8fbc",
                                "$comment": "CSV\u8a2d\u5b9a\u306e\u5217\u30e9\u30d9\u30eb\u3002property\u540d\u306f\u696d\u52d9\u30d5\u30a3\u30fc\u30eb\u30c9\u3060\u304c\u5024\u306f\u51fa\u529b\u5217\u540d\u306e\u8868\u793a\u6587\u5b57\u5217\u3002"
                            },
                            "trackingNumber": {
                                "type": [
                                    "string",
                                    "null"
                                ],
                                "title": "\u8377\u7269\u8ffd\u8de1\u756a\u53f7",
                                "description": "\u914d\u9001\u696d\u8005\u306e\u8377\u7269\u8ffd\u8de1\u756a\u53f7\u3002confirmUrl\u3068\u7d44\u307f\u5408\u308f\u305b\u3066\u8ffd\u8de1URL\u3092\u69cb\u6210",
                                "minLength": 0,
                                "maxLength": 255,
                                "$comment": "CSV\u8a2d\u5b9a\u306e\u5217\u30e9\u30d9\u30eb\u3002property\u540d\u306f\u696d\u52d9\u30d5\u30a3\u30fc\u30eb\u30c9\u3060\u304c\u5024\u306f\u51fa\u529b\u5217\u540d\u306e\u8868\u793a\u6587\u5b57\u5217\u3002"
                            },
                            "deliveryName": {
                                "type": [
                                    "string",
                                    "null"
                                ],
                                "minLength": 0,
                                "maxLength": 255,
                                "title": "\u914d\u9001\u65b9\u6cd5\u540d",
                                "description": "\u7ba1\u7406\u753b\u9762\u3067\u767b\u9332\u30fb\u66f4\u65b0\u3059\u308b\u914d\u9001\u65b9\u6cd5\u306e\u8868\u793a\u540d\u3002\u5b9f\u904b\u7528\u3067\u306f\u5e97\u8217\u72ec\u81ea\u306e\u9577\u3044\u540d\u79f0\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                                "example": "\u30e4\u30de\u30c8\u5b85\u6025\u4fbf",
                                "$comment": "CSV\u8a2d\u5b9a\u306e\u5217\u30e9\u30d9\u30eb\u3002property\u540d\u306f\u696d\u52d9\u30d5\u30a3\u30fc\u30eb\u30c9\u3060\u304c\u5024\u306f\u51fa\u529b\u5217\u540d\u306e\u8868\u793a\u6587\u5b57\u5217\u3002"
                            }
                        },
                        "additionalProperties": false,
                        "required": [
                            "paymentMethod",
                            "trackingNumber",
                            "deliveryName"
                        ]
                    },
                    "outputColumns": {
                        "type": [
                            "object",
                            "null"
                        ],
                        "title": "\u51fa\u529bCSV\u5217",
                        "description": "/admin/csv-config \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u51fa\u529bCSV\u5217\u3002ALPS\u3001Fake\u89b3\u5bdf\u3001Resource\u5883\u754c\u306e\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305f\u696d\u52d9\u5951\u7d04\u3002",
                        "properties": {
                            "orderDate": {
                                "title": "\u6ce8\u6587\u65e5",
                                "description": "\u6ce8\u6587\u78ba\u5b9a\u65e5\u6642 Fake\u89b3\u5bdf\u6587\u5b57\u9577 19\u301c19; \u89b3\u5bdf\u5024 '2026-04-01 10:00:00'\u3002",
                                "type": "string",
                                "example": "2026-04-01 10:00:00",
                                "minLength": 0,
                                "maxLength": 255,
                                "$comment": "CSV\u8a2d\u5b9a\u306e\u5217\u30e9\u30d9\u30eb\u3002property\u540d\u306f\u696d\u52d9\u30d5\u30a3\u30fc\u30eb\u30c9\u3060\u304c\u5024\u306f\u51fa\u529b\u5217\u540d\u306e\u8868\u793a\u6587\u5b57\u5217\u3002"
                            },
                            "paymentTotal": {
                                "type": [
                                    "string",
                                    "null"
                                ],
                                "title": "\u652f\u6255\u5408\u8a08",
                                "description": "\u5b9f\u969b\u306e\u652f\u6255\u91d1\u984d\u3002\u521d\u671f\u5024\u306ftotal\u3068\u540c\u5024\u3067\u3001PointProcessor\u304c\u30dd\u30a4\u30f3\u30c8\u5024\u5f15\u304d\u306eOrderItem\uff08type=POINT_DISCOUNT\u3001\u4e0d\u8ab2\u7a0e\uff09\u3092\u8ffd\u52a0\u5f8c\u306bPurchaseFlow.calculateTotal()\u3067\u518d\u8a08\u7b97\u3055\u308c\u308b\u3002\u8a08\u7b97\u5f0f: total - (\u5229\u7528\u30dd\u30a4\u30f3\u30c8 x pointConversionRate) Fake\u89b3\u5bdf\u6570\u5024 12700\u301c12700; \u89b3\u5bdf\u5024 '12700'\u3002",
                                "example": "12700",
                                "$comment": "CSV\u8a2d\u5b9a\u306e\u5217\u30e9\u30d9\u30eb\u3002property\u540d\u306f\u696d\u52d9\u30d5\u30a3\u30fc\u30eb\u30c9\u3060\u304c\u5024\u306f\u51fa\u529b\u5217\u540d\u306e\u8868\u793a\u6587\u5b57\u5217\u3002",
                                "minLength": 0,
                                "maxLength": 255
                            },
                            "customerName": {
                                "type": [
                                    "string",
                                    "null"
                                ],
                                "minLength": 0,
                                "maxLength": 255,
                                "title": "\u59d3",
                                "description": "\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u30fb\u304a\u554f\u3044\u5408\u308f\u305b\u3067\u5171\u901a\u4f7f\u7528\u3055\u308c\u308b\u59d3",
                                "$comment": "CSV\u8a2d\u5b9a\u306e\u5217\u30e9\u30d9\u30eb\u3002property\u540d\u306f\u696d\u52d9\u30d5\u30a3\u30fc\u30eb\u30c9\u3060\u304c\u5024\u306f\u51fa\u529b\u5217\u540d\u306e\u8868\u793a\u6587\u5b57\u5217\u3002"
                            },
                            "orderNo": {
                                "type": [
                                    "string",
                                    "null"
                                ],
                                "minLength": 0,
                                "maxLength": 255,
                                "title": "\u6ce8\u6587\u756a\u53f7",
                                "description": "\u9867\u5ba2\u5411\u3051\u306e\u6ce8\u6587\u756a\u53f7\u3002\u30d5\u30a9\u30fc\u30de\u30c3\u30c8\u306f\u30ab\u30b9\u30bf\u30de\u30a4\u30ba\u53ef\u80fd Fake\u89b3\u5bdf\u6587\u5b57\u9577 32\u301c32; \u89b3\u5bdf\u5024 'past0000000000000000000000000001'\u3002",
                                "example": "past0000000000000000000000000001",
                                "$comment": "CSV\u8a2d\u5b9a\u306e\u5217\u30e9\u30d9\u30eb\u3002property\u540d\u306f\u696d\u52d9\u30d5\u30a3\u30fc\u30eb\u30c9\u3060\u304c\u5024\u306f\u51fa\u529b\u5217\u540d\u306e\u8868\u793a\u6587\u5b57\u5217\u3002"
                            }
                        },
                        "additionalProperties": false,
                        "required": [
                            "orderDate",
                            "paymentTotal",
                            "customerName",
                            "orderNo"
                        ]
                    },
                    "csvType": {
                        "type": "integer",
                        "title": "CSV\u7a2e\u5225",
                        "description": "CSV\u51fa\u529b\u9805\u76ee\u8a2d\u5b9a\u3067\u73fe\u5728\u9078\u629e\u3057\u3066\u3044\u308bCSV\u7a2e\u5225\u30021=\u5546\u54c1CSV, 2=\u4f1a\u54e1CSV, 3=\u53d7\u6ce8CSV, 4=\u914d\u9001CSV\u3002\u753b\u9762\u306e\u9078\u629e\u72b6\u614b\u3068POST\u5bfe\u8c61\u306e\u5217\u8a2d\u5b9a\u30b3\u30f3\u30c6\u30ad\u30b9\u30c8\u3092\u793a\u3059\u3002",
                        "enum": [
                            1,
                            2,
                            3,
                            4
                        ],
                        "example": 1
                    },
                    "csrfToken": {
                        "$ref": "#/$defs/csrfToken"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "notOutputColumns",
                    "outputColumns",
                    "csvType",
                    "csrfToken"
                ]
            },
            "POST/admin/csv-configResponse": {
                "title": "POST /admin/csv-config response",
                "description": "POST /admin/csv-config response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "message": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "CSV\u30e1\u30c3\u30bb\u30fc\u30b8",
                        "description": "/admin/csv-config \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u51e6\u7406\u7d50\u679c\u30e1\u30c3\u30bb\u30fc\u30b8\u3002\u6ce8\u6587\u6642\u304a\u554f\u3044\u5408\u308f\u305b\u6b04\u3067\u306f\u306a\u304f\u3001\u753b\u9762\u9077\u79fb\u3084\u5b8c\u4e86\u8868\u793a\u306e\u305f\u3081\u306e\u901a\u77e5\u6587\u3002",
                        "example": "\u914d\u9001\u306f\u5e73\u65e5\u5e0c\u671b\u3067\u3059\u3002"
                    },
                    "csvType": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "title": "CSV\u7a2e\u5225",
                        "description": "dtb_csv.csv_type_id \u2014 mtb_csv_type \u3078\u306e FK\uff081=\u5546\u54c1CSV, 2=\u4f1a\u54e1CSV, 3=\u53d7\u6ce8CSV, 4=\u51fa\u8377CSV\uff09\u30021\u3064\u306e csvType \u304c\u8907\u6570\u306e\u5217\u8a2d\u5b9a\u884c\uff08dtb_csv \u884c\uff09\u3092\u6240\u6709\u3059\u308b\u3002doUpdateCsv \u306f1\u3064\u306e csvType \u306e\u5217\u30d9\u30af\u30bf\u5168\u4f53\u3092\u4e00\u62ec POST \u3057\u3001SqlCsvColumnConfigStorage::replaceType \u304c\u305d\u306e csvType \u306e\u884c\u96c6\u5408\u3092\u30a2\u30c8\u30df\u30c3\u30af\u306b\u7f6e\u63db\u3059\u308b\u3002mtb_csv_type \u306f structure-only \u30c0\u30f3\u30d7\u3067\u7a7a\u306e\u305f\u3081 SQL \u30c6\u30b9\u30c8\u306f seedCsvTypes \u3067\u30b7\u30fc\u30c9\uff08seedAdminMasters \u3068\u540c\u3058\u7a7a\u30de\u30b9\u30bf FK \u30b7\u30fc\u30c9\u898f\u7d04\uff09",
                        "minimum": 0
                    },
                    "columns": {
                        "type": "array",
                        "title": "CSV\u5217\u5b9a\u7fa9",
                        "description": "/admin/csv-config \u306eCSV\u5217\u8a2d\u5b9a\u3002\u5404\u8981\u7d20\u306f\u51fa\u529b\u5bfe\u8c61\u30d5\u30a3\u30fc\u30eb\u30c9\u3068\u8868\u793a\u540d\u3092\u8868\u3059\u3002",
                        "items": {
                            "type": "object",
                            "title": "CSV\u5217",
                            "description": "/admin/csv-config \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308bCSV\u5217\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `columns` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002",
                            "properties": {
                                "name": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 32,
                                    "title": "\u51e6\u7406\u8868\u793a\u540d",
                                    "description": "Fake\u89b3\u5bdf\u6587\u5b57\u9577 1\u301c7; \u89b3\u5bdf\u5024 '\u30c6\u30b9\u30c8\u7ba1\u7406\u8005', '\u526f\u7ba1\u7406\u8005', '\u5e97\u8217\u30aa\u30fc\u30ca\u30fc', '\u524a\u9664\u6e08\u307f\u7ba1\u7406\u8005', 'Red', 'Blue', 'S', 'Color'\u3002",
                                    "example": "\u30c6\u30b9\u30c8\u7ba1\u7406\u8005"
                                },
                                "label": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 255,
                                    "title": "\u8868\u793a\u30e9\u30d9\u30eb",
                                    "description": "/admin/csv-config \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8868\u793a\u307e\u305f\u306f\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u63cf\u753b\u306b\u4f7f\u3046\u8868\u793a\u30e9\u30d9\u30eb\u3002\u540c\u540dproperty\u3067\u3082\u89aa\u6587\u8108 `root` \u306b\u3088\u3063\u3066\u610f\u5473\u3092\u5206\u3051\u308b\u3002"
                                },
                                "value": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 255,
                                    "title": "\u8868\u793a\u5024",
                                    "description": "/admin/csv-config \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8868\u793a\u307e\u305f\u306f\u9078\u629e\u80a2\u3068\u3057\u3066\u4f7f\u3046\u5024\u3002\u89aa\u30b3\u30f3\u30c6\u30ad\u30b9\u30c8 `columnsItem` \u306b\u5c5e\u3059\u308b\u3002"
                                },
                                "enabled": {
                                    "type": [
                                        "boolean",
                                        "null"
                                    ],
                                    "title": "\u51e6\u7406\u72b6\u614b\u30d5\u30e9\u30b0",
                                    "description": "\u89b3\u5bdf\u5024 'true', 'false'\u3002",
                                    "example": "true"
                                }
                            },
                            "$comment": "\u914d\u5217\u8981\u7d20\u306f\u30de\u30b9\u30bf/CSV/option map\u306e\u52d5\u7684\u884c\u3067\u3042\u308a\u3001\u5217\u96c6\u5408\u304c\u5bfe\u8c61\u7a2e\u5225\u306b\u3088\u308a\u5909\u308f\u308b\u305f\u3081\u56fa\u5b9ashape\u5316\u3057\u306a\u3044\u3002\u65e2\u77e5property\u306f\u5951\u7d04\u3057\u3001\u8ffd\u52a0\u5217\u306f\u8a72\u5f53\u30b5\u30fc\u30d3\u30b9\u5883\u754c\u3067\u6271\u3046\u3002"
                        },
                        "minItems": 0
                    },
                    "count": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 2147483647,
                        "title": "\u4ef6\u6570",
                        "description": "/admin/csv-config \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8fd4\u3059\u4ef6\u6570\u3002\u4e00\u89a7\u30fb\u96c6\u8a08\u30fb\u51e6\u7406\u7d50\u679c\u306e\u898f\u6a21\u3092\u8868\u3059\u975e\u8ca0\u6574\u6570\u3002"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "csvType",
                    "columns",
                    "count"
                ]
            },
            "GET/admin/customerResponse": {
                "title": "GET /admin/customer response",
                "description": "GET /admin/customer response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "form": {
                        "type": [
                            "object",
                            "array",
                            "null"
                        ],
                        "title": "\u5165\u529b\u30d5\u30a9\u30fc\u30e0",
                        "description": "Aura/WebForm\u7531\u6765\u306e\u30d5\u30a9\u30fc\u30e0\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3002\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5185\u90e8\u69cb\u9020\u306e\u305f\u3081schema\u3067\u306f\u5b58\u5728\u3068\u578b\u306e\u307f\u3092\u5951\u7d04\u3059\u308b\u3002",
                        "$comment": "Aura/WebForm\u7531\u6765\u306e\u4e0d\u900f\u660e\u30d5\u30a9\u30fc\u30e0\u8868\u73fe\u3002Resource\u5883\u754c\u3067\u306f\u30d5\u30a9\u30fc\u30e0\u306e\u5b58\u5728\u3068\u30b3\u30f3\u30c6\u30ad\u30b9\u30c8\u3060\u3051\u3092\u5951\u7d04\u3057\u3001\u5185\u90e8\u69cb\u9020\u306f\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5883\u754c\u306b\u59d4\u306d\u308b\u305f\u3081\u8ffd\u52a0\u30ad\u30fc\u5236\u7d04\u3092\u7f6e\u304b\u306a\u3044\u3002"
                    },
                    "sex": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "title": "\u6027\u5225",
                        "description": "1=\u7537\u6027, 2=\u5973\u6027, 3=\u305d\u306e\u4ed6, 4=\u56de\u7b54\u3057\u306a\u3044 Fake\u89b3\u5bdf\u6570\u5024 2\u301c2; \u89b3\u5bdf\u5024 '2'; null 3/5\u3002",
                        "example": 2,
                        "minimum": 0
                    },
                    "kana02": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "pattern": "^[\u30a1-\u30f6\u30fc\u3000 ]*$",
                        "title": "\u30e1\u30a4",
                        "description": "\u540d\u306e\u30ab\u30bf\u30ab\u30ca\u8aad\u307f\u3002\u5168\u89d2\u30ab\u30bf\u30ab\u30ca\u306e\u307f\u8a31\u53ef\uff08\u3072\u3089\u304c\u306a\u5165\u529b\u6642\u306f\u81ea\u52d5\u5909\u63db\uff09\u3002\u65e5\u672c\u306e\u6c0f\u540d\u5165\u529b\u306b\u7279\u6709\u306e\u8aad\u307f\u4eee\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 3\u301c3; \u89b3\u5bdf\u5024 '\u30a2\u30ea\u30b9', '\u30cf\u30ca\u30b3', '\u30bf\u30ed\u30a6'; null 18/31\u3002",
                        "example": "\u30a2\u30ea\u30b9"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u3002Fake corpus\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3060\u304c\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3059\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c10; \u89b3\u5bdf\u5024 '0312345678', '0901234567', '0612345678'; null 18/33\u3002",
                        "type": [
                            "string",
                            "null"
                        ],
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "initialPoint": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 2147483647,
                        "title": "\u521d\u671f\u30dd\u30a4\u30f3\u30c8",
                        "description": "Fake\u89b3\u5bdf\u6570\u5024 100\u301c100; \u89b3\u5bdf\u5024 '100'\u3002",
                        "example": 100
                    },
                    "totalSpent": {
                        "title": "\u7d2f\u8a08\u8cfc\u5165\u91d1\u984d",
                        "description": "/admin/customer \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8fd4\u3059\u7d2f\u8a08\u8cfc\u5165\u91d1\u984d\u3002\u4e00\u89a7\u3001\u96c6\u8a08\u3001CSV\u51e6\u7406\u7d50\u679c\u306e\u898f\u6a21\u3092\u8868\u3059\u975e\u8ca0\u306e\u6570\u5024\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "name02": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 80,
                        "title": "\u540d",
                        "description": "\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u30fb\u304a\u554f\u3044\u5408\u308f\u305b\u3067\u5171\u901a\u4f7f\u7528\u3055\u308c\u308b\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 1\u301c3; \u89b3\u5bdf\u5024 '\u30a2\u30ea\u30b9', '\u592a\u90ce', '\u6b21\u90ce', '\u82b1\u5b50', '\u4e09\u90ce', '\u6e08'\u3002",
                        "example": "\u30a2\u30ea\u30b9"
                    },
                    "kana01": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "pattern": "^[\u30a1-\u30f6\u30fc\u3000 ]*$",
                        "title": "\u30bb\u30a4",
                        "description": "\u59d3\u306e\u30ab\u30bf\u30ab\u30ca\u8aad\u307f\u3002\u5168\u89d2\u30ab\u30bf\u30ab\u30ca\u306e\u307f\u8a31\u53ef\uff08\u3072\u3089\u304c\u306a\u5165\u529b\u6642\u306f\u81ea\u52d5\u5909\u63db\uff09\u3002\u65e5\u672c\u306e\u6c0f\u540d\u5165\u529b\u306b\u7279\u6709\u306e\u8aad\u307f\u4eee\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 3\u301c3; \u89b3\u5bdf\u5024 '\u30e4\u30de\u30c0', '\u30b5\u30c8\u30a6'; null 18/31\u3002",
                        "example": "\u30e4\u30de\u30c0"
                    },
                    "name01": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 80,
                        "title": "\u59d3",
                        "description": "\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u30fb\u304a\u554f\u3044\u5408\u308f\u305b\u3067\u5171\u901a\u4f7f\u7528\u3055\u308c\u308b\u59d3 Fake\u89b3\u5bdf\u6587\u5b57\u9577 2\u301c2; \u89b3\u5bdf\u5024 '\u9234\u6728', '\u5c71\u7530', '\u4f50\u85e4', '\u9ad8\u6a4b', '\u9000\u4f1a'\u3002",
                        "example": "\u9234\u6728"
                    },
                    "favorites": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u304a\u6c17\u306b\u5165\u308a\u5546\u54c1\u4e00\u89a7",
                        "description": "/admin/customer \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u304a\u6c17\u306b\u5165\u308a\u5546\u54c1\u4e00\u89a7\u3002\u914d\u5217\u8981\u7d20\u306fALPS\u610f\u5473\u3068Fake\u89b3\u5bdf\u306b\u57fa\u3065\u304d\u3001\u56fa\u5b9a\u3067\u304d\u306a\u3044\u52d5\u7684\u5217\u306f\u4f8b\u5916\u7406\u7531\u3092\u53f0\u5e33\u5316\u3059\u308b\u3002",
                        "items": {
                            "type": "object",
                            "title": "\u304a\u6c17\u306b\u5165\u308a\u5546\u54c1",
                            "description": "/admin/customer \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u304a\u6c17\u306b\u5165\u308a\u5546\u54c1\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `favorites` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002",
                            "properties": {
                                "productCode": {
                                    "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                                    "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 \u5546\u54c1\u3092\u8b58\u5225\u3059\u308bSKU\u3002Fake corpus\u3067\u306fASCII\u82f1\u6570\u30fb\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3067\u3001\u53d7\u6ce8\u660e\u7d30/\u30ab\u30fc\u30c8\u660e\u7d30\u306e\u7d50\u5408\u30ad\u30fc\u306b\u306a\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c26\u3002",
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 64,
                                    "example": "sample-001"
                                },
                                "name": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 32,
                                    "title": "\u51e6\u7406\u8868\u793a\u540d",
                                    "description": "Fake\u89b3\u5bdf\u6587\u5b57\u9577 1\u301c7; \u89b3\u5bdf\u5024 '\u30c6\u30b9\u30c8\u7ba1\u7406\u8005', '\u526f\u7ba1\u7406\u8005', '\u5e97\u8217\u30aa\u30fc\u30ca\u30fc', '\u524a\u9664\u6e08\u307f\u7ba1\u7406\u8005', 'Red', 'Blue', 'S', 'Color'\u3002",
                                    "example": "\u30c6\u30b9\u30c8\u7ba1\u7406\u8005"
                                },
                                "productName": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 128,
                                    "title": "\u5546\u54c1\u540d",
                                    "description": "\u5546\u54c1\u306e\u8868\u793a\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 6\u301c17\u3002",
                                    "example": "\u30b5\u30f3\u30d7\u30eb\u5546\u54c1 A"
                                },
                                "price02": {
                                    "title": "\u8ca9\u58f2\u4fa1\u683c",
                                    "description": "\u5b9f\u969b\u306e\u8ca9\u58f2\u4fa1\u683c\uff08\u7a0e\u629c\uff09\u3002\u7a0e\u8a08\u7b97\u30fb\u5c0f\u8a08\u8a08\u7b97\u306e\u30d9\u30fc\u30b9 Fake\u89b3\u5bdf\u6570\u5024 800\u301c28000\u3002",
                                    "type": [
                                        "integer",
                                        "null"
                                    ],
                                    "minimum": 0,
                                    "maximum": 999999999,
                                    "example": 3500
                                },
                                "mainImage": {
                                    "title": "\u30e1\u30a4\u30f3\u753b\u50cfURI",
                                    "description": "/admin/customer \u306e\u753b\u9762\u8868\u793a\u306b\u4f7f\u3046\u30e1\u30a4\u30f3\u753b\u50cfURI\u3002\u696d\u52d9\u30a8\u30f3\u30c6\u30a3\u30c6\u30a3\u305d\u306e\u3082\u306e\u3067\u306f\u306a\u304f\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8/\u4e00\u89a7\u8868\u793a\u306e\u88dc\u52a9\u5024\u3002",
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "format": "uri-reference",
                                    "minLength": 1,
                                    "maxLength": 2048,
                                    "example": "/products"
                                },
                                "unitPrice": {
                                    "title": "\u5358\u4fa1\uff08\u8868\u793a/\u8a08\u7b97\u7528\uff09",
                                    "description": "\u660e\u7d301\u4ef6\u3042\u305f\u308a\u306e\u5358\u4fa1\u3002\u53d7\u6ce8/\u30ab\u30fc\u30c8\u660e\u7d30\u30fb\u304a\u6c17\u306b\u5165\u308a\u30b9\u30ca\u30c3\u30d7\u30b7\u30e7\u30c3\u30c8\u3067\u306f\u8ffd\u52a0\u6642\u70b9\u306e price02 \u3092\u30b9\u30ca\u30c3\u30d7\u30b7\u30e7\u30c3\u30c8\u3057\u3066\u4fdd\u6301\u3059\u308b\uff08\u5f8c\u306e\u5024\u5f15\u304d\u3084\u30de\u30b9\u30bf\u6539\u5b9a\u306b\u5f71\u97ff\u3055\u308c\u306a\u3044\uff09\u3002BeMart \u5074\u3067\u306f `int` \u5186\u6574\u6570 Fake\u89b3\u5bdf\u6570\u5024 1200\u301c9800; \u89b3\u5bdf\u5024 '1200', '9800'\u3002",
                                    "type": [
                                        "integer",
                                        "null"
                                    ],
                                    "minimum": 0,
                                    "maximum": 999999999,
                                    "example": 1200
                                },
                                "fileName": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 1,
                                    "maxLength": 255,
                                    "title": "\u30d5\u30a1\u30a4\u30eb\u540d",
                                    "description": "\u5546\u54c1\u753b\u50cf\u306e\u30d5\u30a1\u30a4\u30eb\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 12\u301c15; \u89b3\u5bdf\u5024 'Mail/order.twig', 'Mail/entry.twig', 'sample-a.jpg', 'sample-b.jpg'\u3002",
                                    "example": "Mail/order.twig"
                                }
                            },
                            "additionalProperties": false,
                            "$comment": "\u914d\u5217\u8981\u7d20\u306fFake/Resource\u3067\u89b3\u5bdf\u3055\u308c\u305f\u65e2\u77e5property\u306b\u56fa\u5b9a\u3059\u308b\u3002\u65b0\u3057\u3044\u5217\u304c\u5fc5\u8981\u306b\u306a\u3063\u305f\u5834\u5408\u306fSemantic-Ex\u89b3\u5bdf\u306b\u8ffd\u52a0\u3057\u3066schema\u3092\u66f4\u65b0\u3059\u308b\u3002"
                        },
                        "minItems": 0
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u6709\u7121\u3092\u3069\u3061\u3089\u3082\u53d7\u3051\u5165\u308c\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 7\u301c8; \u89b3\u5bdf\u5024 '1500001', '1000005', '5300001', '530-0001'; null 18/33\u3002",
                        "type": [
                            "string",
                            "null"
                        ],
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "addr01": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u5e02\u533a\u753a\u6751",
                        "description": "\u90fd\u9053\u5e9c\u770c\u3088\u308a\u4e0b\u4f4d\u306e\u5e02\u533a\u753a\u6751\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 3\u301c7; \u89b3\u5bdf\u5024 '\u6e0b\u8c37\u533a', '\u5343\u4ee3\u7530\u533a', '\u5927\u962a\u5e02\u5317\u533a', '\u5927\u962a\u5e02\u5317\u533a\u6885\u7530'; null 18/33\u3002",
                        "example": "\u6e0b\u8c37\u533a"
                    },
                    "birth": {
                        "title": "\u751f\u5e74\u6708\u65e5",
                        "description": "\u4f1a\u54e1\u306e\u751f\u5e74\u6708\u65e5 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c10; \u89b3\u5bdf\u5024 '1990-04-01', '1985-12-15'; null 18/28\u3002",
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "date",
                        "example": "1990-04-01"
                    },
                    "customerId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u4f1a\u54e1ID",
                        "description": "dtb_customer.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e Entity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\uff08\u30de\u30b9\u30a2\u30b5\u30a4\u30f3\u30e1\u30f3\u30c8\u9632\u6b62\u306e\u305f\u3081\u3001Session/AuthZ \u7d4c\u7531\u3067\u8aad\u307f\u51fa\u3057\u3001\u30ea\u30af\u30a8\u30b9\u30c8\u672c\u6587\u304b\u3089\u306f\u53d7\u3051\u53d6\u3089\u306a\u3044\uff09\u3002Favorite / Cart / Order \u306e\u6240\u6709\u8005\u30ad\u30fc\u3068\u3057\u3066\u6a2a\u65ad\u4f7f\u7528 Fake\u89b3\u5bdf\u6587\u5b57\u9577 12\u301c32; \u89b3\u5bdf\u5024 'customer-001', '0123456789abcdef0123456789abcdef', 'customer-002', 'favorite-list-customer', 'favorite-html-customer', 'fedcba9876543210fedcba9876543210', 'aaaaaaaa00000000bbbbbbbb11111111', '10000000aaaa1111bbbb2222cccc3333'\u3002",
                        "example": "customer-001",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    },
                    "addr02": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u756a\u5730\u30fb\u5efa\u7269\u540d",
                        "description": "\u756a\u5730\u30fb\u30d3\u30eb\u540d\u30fb\u90e8\u5c4b\u756a\u53f7\u7b49\u306e\u8a73\u7d30\u4f4f\u6240 Fake\u89b3\u5bdf\u6587\u5b57\u9577 5\u301c8; \u89b3\u5bdf\u5024 '\u795e\u5bae\u524d1-1-1', '\u4e38\u306e\u51852-2-2', '\u6885\u75301-1-1', '1-2-3'; null 18/33\u3002",
                        "example": "\u795e\u5bae\u524d1-1-1"
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b Fake\u89b3\u5bdf\u6570\u5024 1\u301c2; \u89b3\u5bdf\u5024 '2', '1'\u3002",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u3002\u4f1a\u54e1\u767b\u9332\u30fb\u30ed\u30b0\u30a4\u30f3\u30fb\u901a\u77e5\u3067\u5171\u901a\u306b\u4f7f\u3046\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 15\u301c58; \u89b3\u5bdf\u5024 'bob@example.com', 'login-test@example.com', 'alice@example.com', 'carol@example.com', 'provisional@example.com', 'withdrawn-30000000aaaa3333bbbb4444cccc5555@example.invalid'\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770c",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u90fd\u9053\u5e9c\u770cID\u3002\u4f4f\u6240\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u72b6\u614b\u3067\u306f0\u3001\u78ba\u5b9a\u4f4f\u6240\u3067\u306f1\u301c47\u3092\u4f7f\u3046\u3002 Fake\u89b3\u5bdf\u6570\u5024 13\u301c27; \u89b3\u5bdf\u5024 '13', '27'; null 3/9\u3002",
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "favoriteCount": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 2147483647,
                        "title": "\u304a\u6c17\u306b\u5165\u308a\u4ef6\u6570",
                        "description": "/admin/customer \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8fd4\u3059\u304a\u6c17\u306b\u5165\u308a\u4ef6\u6570\u3002\u4e00\u89a7\u30fb\u96c6\u8a08\u30fb\u51e6\u7406\u7d50\u679c\u306e\u898f\u6a21\u3092\u8868\u3059\u975e\u8ca0\u6574\u6570\u3002"
                    },
                    "companyName": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u4f1a\u793e\u540d",
                        "description": "\u6cd5\u4eba\u9867\u5ba2\u306e\u793e\u540d\u3002B2B\u53d6\u5f15\u3084\u30a4\u30f3\u30dc\u30a4\u30b9\u3067\u4f7f\u7528 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c11; \u89b3\u5bdf\u5024 'Acme Corp.', '\u682a\u5f0f\u4f1a\u793eEC-CUBE'; null 24/32\u3002",
                        "example": "Acme Corp."
                    },
                    "job": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "title": "\u8077\u696d",
                        "description": "1=\u516c\u52d9\u54e1\u301c18=\u305d\u306e\u4ed6\u306e18\u533a\u5206 Fake\u89b3\u5bdf\u6570\u5024 7\u301c18; \u89b3\u5bdf\u5024 '7', '18'; null 3/5\u3002",
                        "example": 7,
                        "minimum": 0
                    },
                    "orders": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u6ce8\u6587\u4e00\u89a7",
                        "description": "/admin/customer \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u6ce8\u6587\u4e00\u89a7\u3002\u914d\u5217\u8981\u7d20\u306fALPS\u610f\u5473\u3068Fake\u89b3\u5bdf\u306b\u57fa\u3065\u304d\u3001\u56fa\u5b9a\u3067\u304d\u306a\u3044\u52d5\u7684\u5217\u306f\u4f8b\u5916\u7406\u7531\u3092\u53f0\u5e33\u5316\u3059\u308b\u3002",
                        "items": {
                            "type": "object",
                            "title": "\u6ce8\u6587\u6982\u8981",
                            "description": "/admin/customer \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u6ce8\u6587\u6982\u8981\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `orders` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002",
                            "properties": {
                                "orderNo": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 64,
                                    "title": "\u6ce8\u6587\u756a\u53f7",
                                    "description": "\u9867\u5ba2\u5411\u3051\u306e\u6ce8\u6587\u756a\u53f7\u3002\u30d5\u30a9\u30fc\u30de\u30c3\u30c8\u306f\u30ab\u30b9\u30bf\u30de\u30a4\u30ba\u53ef\u80fd Fake\u89b3\u5bdf\u6587\u5b57\u9577 32\u301c32; \u89b3\u5bdf\u5024 'past0000000000000000000000000001'\u3002",
                                    "example": "past0000000000000000000000000001"
                                },
                                "orderStatus": {
                                    "title": "\u53d7\u6ce8\u30b9\u30c6\u30fc\u30bf\u30b9",
                                    "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 Fake\u89b3\u5bdf\u6570\u5024 1\u301c1; \u89b3\u5bdf\u5024 '1'\u3002",
                                    "type": [
                                        "integer",
                                        "null"
                                    ],
                                    "minimum": 1,
                                    "maximum": 9,
                                    "example": 1
                                },
                                "orderDate": {
                                    "title": "\u6ce8\u6587\u65e5",
                                    "description": "\u6ce8\u6587\u78ba\u5b9a\u65e5\u6642 Fake\u89b3\u5bdf\u6587\u5b57\u9577 19\u301c19; \u89b3\u5bdf\u5024 '2026-04-01 10:00:00'\u3002",
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "example": "2026-04-01 10:00:00",
                                    "pattern": "^\\d{4}-\\d{2}-\\d{2}([ T]\\d{2}:\\d{2}:\\d{2}([+-]\\d{2}:?\\d{2}|Z)?)?$"
                                },
                                "paymentTotal": {
                                    "type": [
                                        "integer",
                                        "null"
                                    ],
                                    "title": "\u652f\u6255\u5408\u8a08",
                                    "description": "\u5b9f\u969b\u306e\u652f\u6255\u91d1\u984d\u3002\u521d\u671f\u5024\u306ftotal\u3068\u540c\u5024\u3067\u3001PointProcessor\u304c\u30dd\u30a4\u30f3\u30c8\u5024\u5f15\u304d\u306eOrderItem\uff08type=POINT_DISCOUNT\u3001\u4e0d\u8ab2\u7a0e\uff09\u3092\u8ffd\u52a0\u5f8c\u306bPurchaseFlow.calculateTotal()\u3067\u518d\u8a08\u7b97\u3055\u308c\u308b\u3002\u8a08\u7b97\u5f0f: total - (\u5229\u7528\u30dd\u30a4\u30f3\u30c8 x pointConversionRate) Fake\u89b3\u5bdf\u6570\u5024 12700\u301c12700; \u89b3\u5bdf\u5024 '12700'\u3002",
                                    "example": 12700,
                                    "minimum": 0,
                                    "maximum": 999999999
                                },
                                "total": {
                                    "type": [
                                        "integer",
                                        "null"
                                    ],
                                    "title": "\u53d7\u6ce8\u5408\u8a08",
                                    "description": "\u53d7\u6ce8\u5408\u8a08\u91d1\u984d\u3002\u8a08\u7b97\u5f0f: subtotal(\u5546\u54c1\u7a0e\u8fbc\u5408\u8a08) + deliveryFeeTotal(\u9001\u6599) + charge(\u624b\u6570\u6599) - discount(\u5024\u5f15\u304d)\u3002\u30ab\u30fc\u30c8\u306etotalPrice\u3068\u306f\u5225\u30d7\u30ed\u30d1\u30c6\u30a3 Fake\u89b3\u5bdf\u6570\u5024 12700\u301c12700; \u89b3\u5bdf\u5024 '12700'\u3002",
                                    "example": 12700,
                                    "minimum": 0,
                                    "maximum": 999999999
                                },
                                "itemCount": {
                                    "type": [
                                        "integer",
                                        "null"
                                    ],
                                    "minimum": 0,
                                    "maximum": 10000,
                                    "title": "\u660e\u7d30\u4ef6\u6570",
                                    "description": "/admin/customer \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8fd4\u3059\u660e\u7d30\u4ef6\u6570\u3002\u4e00\u89a7\u30fb\u96c6\u8a08\u30fb\u51e6\u7406\u7d50\u679c\u306e\u898f\u6a21\u3092\u8868\u3059\u975e\u8ca0\u6574\u6570\u3002",
                                    "example": 1
                                }
                            },
                            "additionalProperties": false,
                            "$comment": "\u914d\u5217\u8981\u7d20\u306fFake/Resource\u3067\u89b3\u5bdf\u3055\u308c\u305f\u65e2\u77e5property\u306b\u56fa\u5b9a\u3059\u308b\u3002\u65b0\u3057\u3044\u5217\u304c\u5fc5\u8981\u306b\u306a\u3063\u305f\u5834\u5408\u306fSemantic-Ex\u89b3\u5bdf\u306b\u8ffd\u52a0\u3057\u3066schema\u3092\u66f4\u65b0\u3059\u308b\u3002"
                        },
                        "minItems": 0
                    },
                    "orderCount": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 2147483647,
                        "title": "\u6ce8\u6587\u4ef6\u6570",
                        "description": "/admin/customer \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8fd4\u3059\u6ce8\u6587\u4ef6\u6570\u3002\u4e00\u89a7\u30fb\u96c6\u8a08\u30fb\u51e6\u7406\u7d50\u679c\u306e\u898f\u6a21\u3092\u8868\u3059\u975e\u8ca0\u6574\u6570\u3002"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "csrfToken",
                    "initialPoint",
                    "totalSpent",
                    "name02",
                    "name01",
                    "favorites",
                    "addr01",
                    "customerId",
                    "customerStatus",
                    "email",
                    "favoriteCount",
                    "orders",
                    "orderCount"
                ]
            },
            "POST/admin/customerResponse": {
                "title": "POST /admin/customer response",
                "description": "POST /admin/customer (\u4f1a\u54e1\u60c5\u5831\u66f4\u65b0\u30fb\u7ba1\u7406) response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "name01": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 80,
                        "title": "\u59d3",
                        "description": "\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u30fb\u304a\u554f\u3044\u5408\u308f\u305b\u3067\u5171\u901a\u4f7f\u7528\u3055\u308c\u308b\u59d3 Fake\u89b3\u5bdf\u6587\u5b57\u9577 2\u301c2; \u89b3\u5bdf\u5024 '\u9234\u6728', '\u5c71\u7530', '\u4f50\u85e4', '\u9ad8\u6a4b', '\u9000\u4f1a'\u3002",
                        "example": "\u9234\u6728"
                    },
                    "customerId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u4f1a\u54e1ID",
                        "description": "dtb_customer.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e Entity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\uff08\u30de\u30b9\u30a2\u30b5\u30a4\u30f3\u30e1\u30f3\u30c8\u9632\u6b62\u306e\u305f\u3081\u3001Session/AuthZ \u7d4c\u7531\u3067\u8aad\u307f\u51fa\u3057\u3001\u30ea\u30af\u30a8\u30b9\u30c8\u672c\u6587\u304b\u3089\u306f\u53d7\u3051\u53d6\u3089\u306a\u3044\uff09\u3002Favorite / Cart / Order \u306e\u6240\u6709\u8005\u30ad\u30fc\u3068\u3057\u3066\u6a2a\u65ad\u4f7f\u7528 Fake\u89b3\u5bdf\u6587\u5b57\u9577 12\u301c32; \u89b3\u5bdf\u5024 'customer-001', '0123456789abcdef0123456789abcdef', 'customer-002', 'favorite-list-customer', 'favorite-html-customer', 'fedcba9876543210fedcba9876543210', 'aaaaaaaa00000000bbbbbbbb11111111', '10000000aaaa1111bbbb2222cccc3333'\u3002",
                        "example": "customer-001",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u3002\u4f1a\u54e1\u767b\u9332\u30fb\u30ed\u30b0\u30a4\u30f3\u30fb\u901a\u77e5\u3067\u5171\u901a\u306b\u4f7f\u3046\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 15\u301c58; \u89b3\u5bdf\u5024 'bob@example.com', 'login-test@example.com', 'alice@example.com', 'carol@example.com', 'provisional@example.com', 'withdrawn-30000000aaaa3333bbbb4444cccc5555@example.invalid'\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "name02": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 80,
                        "title": "\u540d",
                        "description": "\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u30fb\u304a\u554f\u3044\u5408\u308f\u305b\u3067\u5171\u901a\u4f7f\u7528\u3055\u308c\u308b\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 1\u301c3; \u89b3\u5bdf\u5024 '\u30a2\u30ea\u30b9', '\u592a\u90ce', '\u6b21\u90ce', '\u82b1\u5b50', '\u4e09\u90ce', '\u6e08'\u3002",
                        "example": "\u30a2\u30ea\u30b9"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "customerId",
                    "email",
                    "name01",
                    "name02"
                ]
            },
            "GET/admin/customer-csvResponse": {
                "title": "GET /admin/customer-csv response",
                "description": "GET /admin/customer-csv response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "rowCount": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 2147483647,
                        "title": "\u884c\u6570",
                        "description": "/admin/customer-csv \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8fd4\u3059\u884c\u6570\u3002\u4e00\u89a7\u30fb\u96c6\u8a08\u30fb\u51e6\u7406\u7d50\u679c\u306e\u898f\u6a21\u3092\u8868\u3059\u975e\u8ca0\u6574\u6570\u3002"
                    },
                    "csv": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 5000000,
                        "$comment": "CSV\u5217\u306e\u696d\u52d9\u59a5\u5f53\u6027\u306fCSV\u4e92\u63db\u30b5\u30fc\u30d3\u30b9\u3067\u691c\u67fb\u3059\u308b\u3002\u3053\u3053\u3067\u306fJSON\u5883\u754c\u4e0a\u306e\u6587\u5b57\u5217\u30b5\u30a4\u30ba\u3092\u5951\u7d04\u3059\u308b\u3002",
                        "title": "\u8f38\u9001\u30da\u30a4\u30ed\u30fc\u30c9",
                        "description": "CSV\u30a4\u30f3\u30dd\u30fc\u30c8/\u30a8\u30af\u30b9\u30dd\u30fc\u30c8\u672c\u6587\u3002\u5217\u69cb\u9020\u306e\u8a73\u7d30\u306fCSV\u4e92\u63db\u30b5\u30fc\u30d3\u30b9\u5883\u754c\u3067\u691c\u67fb\u3059\u308b\u3002"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "rowCount",
                    "csv"
                ]
            },
            "GET/admin/customer-delivery-editResponse": {
                "title": "GET /admin/customer-delivery-edit response",
                "description": "GET /admin/customer-delivery-edit response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "form": {
                        "type": [
                            "object",
                            "array",
                            "null"
                        ],
                        "title": "\u5165\u529b\u30d5\u30a9\u30fc\u30e0",
                        "description": "Aura/WebForm\u7531\u6765\u306e\u30d5\u30a9\u30fc\u30e0\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3002\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5185\u90e8\u69cb\u9020\u306e\u305f\u3081schema\u3067\u306f\u5b58\u5728\u3068\u578b\u306e\u307f\u3092\u5951\u7d04\u3059\u308b\u3002",
                        "$comment": "Aura/WebForm\u7531\u6765\u306e\u4e0d\u900f\u660e\u30d5\u30a9\u30fc\u30e0\u8868\u73fe\u3002Resource\u5883\u754c\u3067\u306f\u30d5\u30a9\u30fc\u30e0\u306e\u5b58\u5728\u3068\u30b3\u30f3\u30c6\u30ad\u30b9\u30c8\u3060\u3051\u3092\u5951\u7d04\u3057\u3001\u5185\u90e8\u69cb\u9020\u306f\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5883\u754c\u306b\u59d4\u306d\u308b\u305f\u3081\u8ffd\u52a0\u30ad\u30fc\u5236\u7d04\u3092\u7f6e\u304b\u306a\u3044\u3002"
                    },
                    "customerId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u4f1a\u54e1ID",
                        "description": "dtb_customer.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e Entity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\uff08\u30de\u30b9\u30a2\u30b5\u30a4\u30f3\u30e1\u30f3\u30c8\u9632\u6b62\u306e\u305f\u3081\u3001Session/AuthZ \u7d4c\u7531\u3067\u8aad\u307f\u51fa\u3057\u3001\u30ea\u30af\u30a8\u30b9\u30c8\u672c\u6587\u304b\u3089\u306f\u53d7\u3051\u53d6\u3089\u306a\u3044\uff09\u3002Favorite / Cart / Order \u306e\u6240\u6709\u8005\u30ad\u30fc\u3068\u3057\u3066\u6a2a\u65ad\u4f7f\u7528 Fake\u89b3\u5bdf\u6587\u5b57\u9577 12\u301c32; \u89b3\u5bdf\u5024 'customer-001', '0123456789abcdef0123456789abcdef', 'customer-002', 'favorite-list-customer', 'favorite-html-customer', 'fedcba9876543210fedcba9876543210', 'aaaaaaaa00000000bbbbbbbb11111111', '10000000aaaa1111bbbb2222cccc3333'\u3002",
                        "example": "customer-001",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "csrfToken",
                    "customerId"
                ]
            },
            "POST/admin/customer-delivery-editResponse": {
                "title": "POST /admin/customer-delivery-edit response",
                "description": "POST /admin/customer-delivery-edit response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "addressId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u914d\u9001\u5148ID",
                        "description": "dtb_customer_address.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002\u30b5\u30fc\u30d0\u63a1\u756a\u3002",
                        "example": "addr00000000000000000000000000a1",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$"
                    },
                    "customerId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u4f1a\u54e1ID",
                        "description": "dtb_customer.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002\u7ba1\u7406\u753b\u9762\u3067\u306f route param \u7531\u6765\u3002",
                        "example": "0123456789abcdef0123456789abcdef",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$"
                    },
                    "name01": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u59d3",
                        "description": "\u914d\u9001\u5148\u306e\u59d3\u3002",
                        "example": "\u5c71\u7530",
                        "minLength": 0,
                        "maxLength": 255
                    },
                    "name02": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u540d",
                        "description": "\u914d\u9001\u5148\u306e\u540d\u3002",
                        "example": "\u592a\u90ce",
                        "minLength": 0,
                        "maxLength": 255
                    },
                    "kana01": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u30bb\u30a4",
                        "description": "\u59d3\u306e\u30ab\u30bf\u30ab\u30ca\u8aad\u307f\u3002null \u8a31\u5bb9\u3002",
                        "example": "\u30e4\u30de\u30c0",
                        "minLength": 0,
                        "maxLength": 255
                    },
                    "kana02": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u30e1\u30a4",
                        "description": "\u540d\u306e\u30ab\u30bf\u30ab\u30ca\u8aad\u307f\u3002null \u8a31\u5bb9\u3002",
                        "example": "\u30bf\u30ed\u30a6",
                        "minLength": 0,
                        "maxLength": 255
                    },
                    "companyName": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u4f1a\u793e\u540d",
                        "description": "\u914d\u9001\u5148\u306e\u4f1a\u793e\u540d\u3002null \u8a31\u5bb9\u3002",
                        "example": "Acme Corp.",
                        "minLength": 0,
                        "maxLength": 255
                    },
                    "phoneNumber": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u914d\u9001\u5148\u306e\u96fb\u8a71\u756a\u53f7\u3002",
                        "example": "0312345678",
                        "minLength": 0,
                        "maxLength": 13
                    },
                    "postalCode": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002",
                        "example": "1500001",
                        "minLength": 0,
                        "maxLength": 8
                    },
                    "pref": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "1=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\u3002",
                        "example": 13,
                        "minimum": 0,
                        "maximum": 47
                    },
                    "addr01": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u5e02\u533a\u753a\u6751",
                        "description": "\u5e02\u533a\u753a\u6751\u540d\u3002",
                        "example": "\u6e0b\u8c37\u533a",
                        "minLength": 0,
                        "maxLength": 255
                    },
                    "addr02": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u756a\u5730\u30fb\u5efa\u7269\u540d",
                        "description": "\u756a\u5730\u30fb\u30d3\u30eb\u540d\u30fb\u90e8\u5c4b\u756a\u53f7\u7b49\u3002",
                        "example": "\u795e\u5bae\u524d1-1-1",
                        "minLength": 0,
                        "maxLength": 255
                    }
                },
                "required": [
                    "addressId",
                    "customerId",
                    "name01",
                    "name02",
                    "postalCode",
                    "pref",
                    "addr01",
                    "addr02",
                    "phoneNumber"
                ],
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                }
            },
            "DELETE/admin/customer-delivery-editResponse": {
                "title": "DELETE /admin/customer-delivery-edit response",
                "description": "DELETE /admin/customer-delivery-edit response \u306e response body schema\u3002",
                "type": "object",
                "properties": {
                    "addressId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u914d\u9001\u5148ID",
                        "description": "dtb_customer_address.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002\u30b5\u30fc\u30d0\u63a1\u756a\u3002",
                        "example": "addr00000000000000000000000000a1",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$"
                    },
                    "customerId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u4f1a\u54e1ID",
                        "description": "dtb_customer.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002\u7ba1\u7406\u753b\u9762\u3067\u306f route param \u7531\u6765\u3002",
                        "example": "0123456789abcdef0123456789abcdef",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$"
                    }
                },
                "required": [
                    "addressId",
                    "customerId"
                ],
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                }
            },
            "GET/admin/customer-listResponse": {
                "title": "GET /admin/customer-list response",
                "description": "GET /admin/customer-list response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "filters": {
                        "type": [
                            "object",
                            "null"
                        ],
                        "title": "\u691c\u7d22\u6761\u4ef6",
                        "description": "/admin/customer-list \u306e\u4e00\u89a7\u8868\u793a\u3092\u5236\u5fa1\u3059\u308b\u30da\u30fc\u30b8\u30f3\u30b0/\u691c\u7d22\u6761\u4ef6\u3002\u4ef6\u6570\u3001\u958b\u59cb\u4f4d\u7f6e\u3001\u4e26\u3073\u9806\u3001\u524d\u5f8c\u30ea\u30f3\u30af\u3092\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u304c\u518d\u73fe\u3059\u308b\u305f\u3081\u306e\u5024\u3002",
                        "properties": {
                            "nameKeyword": {
                                "type": [
                                    "string",
                                    "null"
                                ],
                                "minLength": 0,
                                "maxLength": 255,
                                "title": "\u540d\u524d\u691c\u7d22\u30ad\u30fc\u30ef\u30fc\u30c9",
                                "description": "/admin/customer-list \u306e\u691c\u7d22\u6761\u4ef6\u3002\u5546\u54c1\u540d\u30fb\u4f1a\u54e1\u540d\u30fb\u7ba1\u7406\u8005\u540d\u306a\u3069\u3001\u3053\u306e\u4e00\u89a7\u753b\u9762\u3067\u540d\u524d\u3068\u3057\u3066\u6271\u3046\u8868\u793a\u540d\u3092\u90e8\u5206\u4e00\u81f4\u691c\u7d22\u3059\u308b\u3002",
                                "example": "\u9234\u6728"
                            },
                            "emailKeyword": {
                                "type": [
                                    "string",
                                    "null"
                                ],
                                "minLength": 0,
                                "maxLength": 255,
                                "title": "\u30e1\u30fc\u30eb\u691c\u7d22\u30ad\u30fc\u30ef\u30fc\u30c9",
                                "description": "/admin/customer-list \u306e\u691c\u7d22\u6761\u4ef6\u3002\u4f1a\u54e1\u307e\u305f\u306f\u7ba1\u7406\u8005\u306e\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9/\u30ed\u30b0\u30a4\u30f3\u8b58\u5225\u5b50\u3092\u90e8\u5206\u4e00\u81f4\u691c\u7d22\u3059\u308b\u3002",
                                "example": "carol"
                            }
                        },
                        "additionalProperties": false,
                        "required": [
                            "nameKeyword",
                            "emailKeyword"
                        ]
                    },
                    "count": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 2147483647,
                        "title": "\u4ef6\u6570",
                        "description": "/admin/customer-list \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8fd4\u3059\u4ef6\u6570\u3002\u4e00\u89a7\u30fb\u96c6\u8a08\u30fb\u51e6\u7406\u7d50\u679c\u306e\u898f\u6a21\u3092\u8868\u3059\u975e\u8ca0\u6574\u6570\u3002"
                    },
                    "csrfToken": {
                        "type": "string",
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002\u7ba1\u7406\u8005\u5411\u3051\u4e00\u89a7\u30da\u30fc\u30b8\u3067\u306e\u7d5e\u308a\u8fbc\u307f\u30d5\u30a9\u30fc\u30e0\u306b\u4f7f\u7528\u3002",
                        "minLength": 1,
                        "maxLength": 160
                    },
                    "searchForm": {
                        "type": [
                            "object",
                            "array",
                            "null"
                        ],
                        "title": "\u691c\u7d22\u30d5\u30a9\u30fc\u30e0",
                        "description": "/admin/customer-list \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u4fdd\u6301\u3059\u308b\u30d5\u30a9\u30fc\u30e0\u6587\u8108\u3002Aura/WebForm\u7531\u6765\u306e\u5185\u90e8\u69cb\u9020\u306f\u5225\u5883\u754c\u306e\u8cac\u52d9\u3067\u3001\u3053\u3053\u3067\u306fResource\u4e0a\u306e\u5f79\u5272\u3092\u793a\u3059\u3002",
                        "$comment": "Aura/WebForm\u7531\u6765\u306e\u4e0d\u900f\u660e\u30d5\u30a9\u30fc\u30e0\u8868\u73fe\u3002Resource\u5883\u754c\u3067\u306f\u30d5\u30a9\u30fc\u30e0\u306e\u5b58\u5728\u3068\u30b3\u30f3\u30c6\u30ad\u30b9\u30c8\u3060\u3051\u3092\u5951\u7d04\u3057\u3001\u5185\u90e8\u69cb\u9020\u306f\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5883\u754c\u306b\u59d4\u306d\u308b\u305f\u3081\u8ffd\u52a0\u30ad\u30fc\u5236\u7d04\u3092\u7f6e\u304b\u306a\u3044\u3002"
                    },
                    "customers": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u4f1a\u54e1\u4e00\u89a7",
                        "description": "/admin/customer-list \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u4f1a\u54e1\u4e00\u89a7\u3002\u914d\u5217\u8981\u7d20\u306fALPS\u610f\u5473\u3068Fake\u89b3\u5bdf\u306b\u57fa\u3065\u304d\u3001\u56fa\u5b9a\u3067\u304d\u306a\u3044\u52d5\u7684\u5217\u306f\u4f8b\u5916\u7406\u7531\u3092\u53f0\u5e33\u5316\u3059\u308b\u3002",
                        "items": {
                            "type": [
                                "object",
                                "null"
                            ],
                            "title": "\u4f1a\u54e1\u6982\u8981",
                            "description": "/admin/customer-list \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u4f1a\u54e1\u6982\u8981\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `customers` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002",
                            "properties": {
                                "name01": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 80,
                                    "title": "\u59d3",
                                    "description": "\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u30fb\u304a\u554f\u3044\u5408\u308f\u305b\u3067\u5171\u901a\u4f7f\u7528\u3055\u308c\u308b\u59d3 Fake\u89b3\u5bdf\u6587\u5b57\u9577 2\u301c2; \u89b3\u5bdf\u5024 '\u9234\u6728', '\u5c71\u7530', '\u4f50\u85e4', '\u9ad8\u6a4b', '\u9000\u4f1a'\u3002",
                                    "example": "\u9234\u6728"
                                },
                                "customerId": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "title": "\u4f1a\u54e1ID",
                                    "description": "dtb_customer.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e Entity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\uff08\u30de\u30b9\u30a2\u30b5\u30a4\u30f3\u30e1\u30f3\u30c8\u9632\u6b62\u306e\u305f\u3081\u3001Session/AuthZ \u7d4c\u7531\u3067\u8aad\u307f\u51fa\u3057\u3001\u30ea\u30af\u30a8\u30b9\u30c8\u672c\u6587\u304b\u3089\u306f\u53d7\u3051\u53d6\u3089\u306a\u3044\uff09\u3002Favorite / Cart / Order \u306e\u6240\u6709\u8005\u30ad\u30fc\u3068\u3057\u3066\u6a2a\u65ad\u4f7f\u7528 Fake\u89b3\u5bdf\u6587\u5b57\u9577 12\u301c32; \u89b3\u5bdf\u5024 'customer-001', '0123456789abcdef0123456789abcdef', 'customer-002', 'favorite-list-customer', 'favorite-html-customer', 'fedcba9876543210fedcba9876543210', 'aaaaaaaa00000000bbbbbbbb11111111', '10000000aaaa1111bbbb2222cccc3333'\u3002",
                                    "example": "customer-001",
                                    "minLength": 0,
                                    "maxLength": 128,
                                    "pattern": "^[A-Za-z0-9._:@/-]*$",
                                    "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                                },
                                "customerStatus": {
                                    "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                                    "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b Fake\u89b3\u5bdf\u6570\u5024 1\u301c2; \u89b3\u5bdf\u5024 '2', '1'\u3002",
                                    "type": "integer",
                                    "enum": [
                                        1,
                                        2,
                                        3
                                    ],
                                    "example": 2
                                },
                                "email": {
                                    "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                                    "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u3002\u4f1a\u54e1\u767b\u9332\u30fb\u30ed\u30b0\u30a4\u30f3\u30fb\u901a\u77e5\u3067\u5171\u901a\u306b\u4f7f\u3046\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 15\u301c58; \u89b3\u5bdf\u5024 'bob@example.com', 'login-test@example.com', 'alice@example.com', 'carol@example.com', 'provisional@example.com', 'withdrawn-30000000aaaa3333bbbb4444cccc5555@example.invalid'\u3002",
                                    "type": "string",
                                    "format": "email",
                                    "minLength": 3,
                                    "maxLength": 254,
                                    "example": "alice@example.com"
                                },
                                "postalCode": {
                                    "title": "\u90f5\u4fbf\u756a\u53f7",
                                    "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u6709\u7121\u3092\u3069\u3061\u3089\u3082\u53d7\u3051\u5165\u308c\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 7\u301c8; \u89b3\u5bdf\u5024 '1500001', '1000005', '5300001', '530-0001'; null 18/33\u3002",
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "pattern": "^\\d{3}-?\\d{4}$",
                                    "example": "1500001"
                                },
                                "name02": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 80,
                                    "title": "\u540d",
                                    "description": "\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u30fb\u304a\u554f\u3044\u5408\u308f\u305b\u3067\u5171\u901a\u4f7f\u7528\u3055\u308c\u308b\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 1\u301c3; \u89b3\u5bdf\u5024 '\u30a2\u30ea\u30b9', '\u592a\u90ce', '\u6b21\u90ce', '\u82b1\u5b50', '\u4e09\u90ce', '\u6e08'\u3002",
                                    "example": "\u30a2\u30ea\u30b9"
                                }
                            },
                            "additionalProperties": false,
                            "$comment": "\u914d\u5217\u8981\u7d20\u306fFake/Resource\u3067\u89b3\u5bdf\u3055\u308c\u305f\u65e2\u77e5property\u306b\u56fa\u5b9a\u3059\u308b\u3002\u65b0\u3057\u3044\u5217\u304c\u5fc5\u8981\u306b\u306a\u3063\u305f\u5834\u5408\u306fSemantic-Ex\u89b3\u5bdf\u306b\u8ffd\u52a0\u3057\u3066schema\u3092\u66f4\u65b0\u3059\u308b\u3002"
                        },
                        "minItems": 0
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "filters",
                    "count",
                    "customers"
                ]
            },
            "POST/admin/delete-customerResponse": {
                "title": "POST /admin/delete-customer response",
                "description": "POST /admin/delete-customer response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "alreadyDeleted": {
                        "type": [
                            "boolean",
                            "null"
                        ],
                        "title": "\u65e2\u524a\u9664\u30d5\u30e9\u30b0",
                        "description": "/admin/delete-customer \u306e\u51e6\u7406\u72b6\u614b\u3092\u793a\u3059\u65e2\u524a\u9664\u30d5\u30e9\u30b0\u3002\u753b\u9762\u8868\u793a\u3084\u51aa\u7b49\u51e6\u7406\u7d50\u679c\u306e\u5206\u5c90\u306b\u4f7f\u3046\u771f\u507d\u5024\u3002"
                    },
                    "originalEmail": {
                        "title": "\u30d5\u30a9\u30fc\u30e0\u6587\u8108\u9805\u76ee",
                        "description": "/admin/delete-customer \u306e\u30d5\u30a9\u30fc\u30e0\u6587\u8108\u3067\u4f7f\u3046\u30d5\u30a9\u30fc\u30e0\u6587\u8108\u9805\u76ee\u3002\u5165\u529b\u4fdd\u6301\u3001\u521d\u671f\u5024\u3001\u518d\u8868\u793a\u306b\u5fc5\u8981\u306a\u88dc\u52a9\u5024\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "message": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u4f1a\u54e1\u30e1\u30c3\u30bb\u30fc\u30b8",
                        "description": "/admin/delete-customer \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u51e6\u7406\u7d50\u679c\u30e1\u30c3\u30bb\u30fc\u30b8\u3002\u6ce8\u6587\u6642\u304a\u554f\u3044\u5408\u308f\u305b\u6b04\u3067\u306f\u306a\u304f\u3001\u753b\u9762\u9077\u79fb\u3084\u5b8c\u4e86\u8868\u793a\u306e\u305f\u3081\u306e\u901a\u77e5\u6587\u3002",
                        "example": "\u914d\u9001\u306f\u5e73\u65e5\u5e0c\u671b\u3067\u3059\u3002"
                    },
                    "customerId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u4f1a\u54e1ID",
                        "description": "dtb_customer.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e Entity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\uff08\u30de\u30b9\u30a2\u30b5\u30a4\u30f3\u30e1\u30f3\u30c8\u9632\u6b62\u306e\u305f\u3081\u3001Session/AuthZ \u7d4c\u7531\u3067\u8aad\u307f\u51fa\u3057\u3001\u30ea\u30af\u30a8\u30b9\u30c8\u672c\u6587\u304b\u3089\u306f\u53d7\u3051\u53d6\u3089\u306a\u3044\uff09\u3002Favorite / Cart / Order \u306e\u6240\u6709\u8005\u30ad\u30fc\u3068\u3057\u3066\u6a2a\u65ad\u4f7f\u7528 Fake\u89b3\u5bdf\u6587\u5b57\u9577 12\u301c32; \u89b3\u5bdf\u5024 'customer-001', '0123456789abcdef0123456789abcdef', 'customer-002', 'favorite-list-customer', 'favorite-html-customer', 'fedcba9876543210fedcba9876543210', 'aaaaaaaa00000000bbbbbbbb11111111', '10000000aaaa1111bbbb2222cccc3333'\u3002",
                        "example": "customer-001",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "alreadyDeleted",
                    "originalEmail",
                    "customerId"
                ]
            },
            "GET/admin/empty-pageResponse": {
                "title": "GET /admin/empty-page response",
                "description": "GET /admin/empty-page response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": [],
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape."
            },
            "GET/admin/indexResponse": {
                "title": "GET /admin/index response",
                "description": "GET /admin/index response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "countNonStockProducts": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 2147483647,
                        "title": "\u5728\u5eab\u5207\u308c\u5546\u54c1\u6570",
                        "description": "/admin/index \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8fd4\u3059\u5728\u5eab\u5207\u308c\u5546\u54c1\u6570\u3002\u4e00\u89a7\u3001\u96c6\u8a08\u3001CSV\u51e6\u7406\u7d50\u679c\u306e\u898f\u6a21\u3092\u8868\u3059\u975e\u8ca0\u306e\u6570\u5024\u3002"
                    },
                    "salesToday": {
                        "title": "\u672c\u65e5\u58f2\u4e0a",
                        "description": "/admin/index \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8fd4\u3059\u672c\u65e5\u58f2\u4e0a\u3002\u4e00\u89a7\u3001\u96c6\u8a08\u3001CSV\u51e6\u7406\u7d50\u679c\u306e\u898f\u6a21\u3092\u8868\u3059\u975e\u8ca0\u306e\u6570\u5024\u3002",
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "recommendedPlugins": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u63a8\u5968\u30d7\u30e9\u30b0\u30a4\u30f3\u4e00\u89a7",
                        "description": "/admin/index \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u63a8\u5968\u30d7\u30e9\u30b0\u30a4\u30f3\u4e00\u89a7\u3002\u914d\u5217\u8981\u7d20\u306fALPS\u610f\u5473\u3068Fake\u89b3\u5bdf\u306b\u57fa\u3065\u304d\u3001\u56fa\u5b9a\u3067\u304d\u306a\u3044\u52d5\u7684\u5217\u306f\u4f8b\u5916\u7406\u7531\u3092\u53f0\u5e33\u5316\u3059\u308b\u3002",
                        "items": {
                            "type": "object",
                            "title": "\u63a8\u5968\u30d7\u30e9\u30b0\u30a4\u30f3",
                            "description": "/admin/index \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u63a8\u5968\u30d7\u30e9\u30b0\u30a4\u30f3\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `recommendedPlugins` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002",
                            "properties": {
                                "pluginCode": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 128,
                                    "pattern": "^[A-Za-z0-9._:@/+-]*$",
                                    "title": "\u30d7\u30e9\u30b0\u30a4\u30f3\u30b3\u30fc\u30c9",
                                    "description": "\u30d7\u30e9\u30b0\u30a4\u30f3\u306e\u4e00\u610f\u8b58\u5225\u5b50\u3002dtb_plugin.code \u306b\u683c\u7d0d\u3059\u308b\u81ea\u7136\u30ad\u30fc \u2014 \u5217\u540d\u306f `code` \u3067\u3042\u3063\u3066 `plugin_code` \u3067\u306f\u306a\u3044\uff08dtb_plugin \u306f EC-CUBE \u5f8c\u767a\u306e dtb_*_code \u547d\u540d\u898f\u7d04\u3088\u308a\u53e4\u3044\uff09\u3002findByCode / install / uninstall / setEnabled \u306e\u5168\u30e9\u30a4\u30d5\u30b5\u30a4\u30af\u30eb\u30e1\u30bd\u30c3\u30c9\u304c\u3053\u306e\u5217\u3092\u30d7\u30ed\u30fc\u30d6\u3059\u308b\u3002dtb_plugin \u306f FK \u5236\u7d04\u3092\u6301\u305f\u306a\u3044\u304c structure-only \u30c0\u30f3\u30d7\u3067\u306f\u7a7a\u306e\u305f\u3081\u3001SQL \u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30c6\u30b9\u30c8\u306f seedPlugins \u30672\u3064\u306e\u30c7\u30e2\u30d7\u30e9\u30b0\u30a4\u30f3\uff08Sample/SamplePlugin, Sample/DisabledPlugin\uff09\u3092\u30b7\u30fc\u30c9\u3059\u308b Fake\u89b3\u5bdf\u6587\u5b57\u9577 19\u301c21; \u89b3\u5bdf\u5024 'Sample/SamplePlugin', 'Sample/DisabledPlugin'\u3002",
                                    "example": "Sample/SamplePlugin"
                                },
                                "name": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 32,
                                    "title": "\u51e6\u7406\u8868\u793a\u540d",
                                    "description": "Fake\u89b3\u5bdf\u6587\u5b57\u9577 1\u301c7; \u89b3\u5bdf\u5024 '\u30c6\u30b9\u30c8\u7ba1\u7406\u8005', '\u526f\u7ba1\u7406\u8005', '\u5e97\u8217\u30aa\u30fc\u30ca\u30fc', '\u524a\u9664\u6e08\u307f\u7ba1\u7406\u8005', 'Red', 'Blue', 'S', 'Color'\u3002",
                                    "example": "\u30c6\u30b9\u30c8\u7ba1\u7406\u8005"
                                },
                                "version": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 32,
                                    "title": "\u8868\u793a\u9805\u76ee",
                                    "description": "Fake\u89b3\u5bdf\u6587\u5b57\u9577 5\u301c5; \u89b3\u5bdf\u5024 '1.0.0'\u3002",
                                    "example": "1.0.0"
                                },
                                "enabled": {
                                    "type": [
                                        "boolean",
                                        "null"
                                    ],
                                    "title": "\u51e6\u7406\u72b6\u614b\u30d5\u30e9\u30b0",
                                    "description": "\u89b3\u5bdf\u5024 'true', 'false'\u3002",
                                    "example": "true"
                                }
                            },
                            "$comment": "\u914d\u5217\u8981\u7d20\u306f\u30de\u30b9\u30bf/CSV/option map\u306e\u52d5\u7684\u884c\u3067\u3042\u308a\u3001\u5217\u96c6\u5408\u304c\u5bfe\u8c61\u7a2e\u5225\u306b\u3088\u308a\u5909\u308f\u308b\u305f\u3081\u56fa\u5b9ashape\u5316\u3057\u306a\u3044\u3002\u65e2\u77e5property\u306f\u5951\u7d04\u3057\u3001\u8ffd\u52a0\u5217\u306f\u8a72\u5f53\u30b5\u30fc\u30d3\u30b9\u5883\u754c\u3067\u6271\u3046\u3002"
                        },
                        "minItems": 0
                    },
                    "orders": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u6ce8\u6587\u4e00\u89a7",
                        "description": "/admin/index \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u6ce8\u6587\u4e00\u89a7\u3002\u914d\u5217\u8981\u7d20\u306fALPS\u610f\u5473\u3068Fake\u89b3\u5bdf\u306b\u57fa\u3065\u304d\u3001\u56fa\u5b9a\u3067\u304d\u306a\u3044\u52d5\u7684\u5217\u306f\u4f8b\u5916\u7406\u7531\u3092\u53f0\u5e33\u5316\u3059\u308b\u3002",
                        "items": {
                            "type": "object",
                            "title": "\u6ce8\u6587\u6982\u8981",
                            "description": "/admin/index \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u6ce8\u6587\u6982\u8981\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `orders` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002",
                            "properties": {
                                "orderNo": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 64,
                                    "title": "\u6ce8\u6587\u756a\u53f7",
                                    "description": "\u9867\u5ba2\u5411\u3051\u306e\u6ce8\u6587\u756a\u53f7\u3002\u30d5\u30a9\u30fc\u30de\u30c3\u30c8\u306f\u30ab\u30b9\u30bf\u30de\u30a4\u30ba\u53ef\u80fd Fake\u89b3\u5bdf\u6587\u5b57\u9577 32\u301c32; \u89b3\u5bdf\u5024 'past0000000000000000000000000001'\u3002",
                                    "example": "past0000000000000000000000000001"
                                },
                                "orderStatus": {
                                    "title": "\u53d7\u6ce8\u30b9\u30c6\u30fc\u30bf\u30b9",
                                    "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 Fake\u89b3\u5bdf\u6570\u5024 1\u301c1; \u89b3\u5bdf\u5024 '1'\u3002",
                                    "type": [
                                        "integer",
                                        "null"
                                    ],
                                    "minimum": 1,
                                    "maximum": 9,
                                    "example": 1
                                },
                                "orderDate": {
                                    "title": "\u6ce8\u6587\u65e5",
                                    "description": "\u6ce8\u6587\u78ba\u5b9a\u65e5\u6642 Fake\u89b3\u5bdf\u6587\u5b57\u9577 19\u301c19; \u89b3\u5bdf\u5024 '2026-04-01 10:00:00'\u3002",
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "example": "2026-04-01 10:00:00",
                                    "pattern": "^\\d{4}-\\d{2}-\\d{2}([ T]\\d{2}:\\d{2}:\\d{2}([+-]\\d{2}:?\\d{2}|Z)?)?$"
                                },
                                "paymentTotal": {
                                    "type": [
                                        "integer",
                                        "null"
                                    ],
                                    "title": "\u652f\u6255\u5408\u8a08",
                                    "description": "\u5b9f\u969b\u306e\u652f\u6255\u91d1\u984d\u3002\u521d\u671f\u5024\u306ftotal\u3068\u540c\u5024\u3067\u3001PointProcessor\u304c\u30dd\u30a4\u30f3\u30c8\u5024\u5f15\u304d\u306eOrderItem\uff08type=POINT_DISCOUNT\u3001\u4e0d\u8ab2\u7a0e\uff09\u3092\u8ffd\u52a0\u5f8c\u306bPurchaseFlow.calculateTotal()\u3067\u518d\u8a08\u7b97\u3055\u308c\u308b\u3002\u8a08\u7b97\u5f0f: total - (\u5229\u7528\u30dd\u30a4\u30f3\u30c8 x pointConversionRate) Fake\u89b3\u5bdf\u6570\u5024 12700\u301c12700; \u89b3\u5bdf\u5024 '12700'\u3002",
                                    "example": 12700,
                                    "minimum": 0,
                                    "maximum": 999999999
                                },
                                "total": {
                                    "type": [
                                        "integer",
                                        "null"
                                    ],
                                    "title": "\u53d7\u6ce8\u5408\u8a08",
                                    "description": "\u53d7\u6ce8\u5408\u8a08\u91d1\u984d\u3002\u8a08\u7b97\u5f0f: subtotal(\u5546\u54c1\u7a0e\u8fbc\u5408\u8a08) + deliveryFeeTotal(\u9001\u6599) + charge(\u624b\u6570\u6599) - discount(\u5024\u5f15\u304d)\u3002\u30ab\u30fc\u30c8\u306etotalPrice\u3068\u306f\u5225\u30d7\u30ed\u30d1\u30c6\u30a3 Fake\u89b3\u5bdf\u6570\u5024 12700\u301c12700; \u89b3\u5bdf\u5024 '12700'\u3002",
                                    "example": 12700,
                                    "minimum": 0,
                                    "maximum": 999999999
                                },
                                "itemCount": {
                                    "type": [
                                        "integer",
                                        "null"
                                    ],
                                    "minimum": 0,
                                    "maximum": 10000,
                                    "title": "\u660e\u7d30\u4ef6\u6570",
                                    "description": "/admin/index \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8fd4\u3059\u660e\u7d30\u4ef6\u6570\u3002\u4e00\u89a7\u30fb\u96c6\u8a08\u30fb\u51e6\u7406\u7d50\u679c\u306e\u898f\u6a21\u3092\u8868\u3059\u975e\u8ca0\u6574\u6570\u3002",
                                    "example": 1
                                }
                            },
                            "additionalProperties": false,
                            "$comment": "\u914d\u5217\u8981\u7d20\u306fFake/Resource\u3067\u89b3\u5bdf\u3055\u308c\u305f\u65e2\u77e5property\u306b\u56fa\u5b9a\u3059\u308b\u3002\u65b0\u3057\u3044\u5217\u304c\u5fc5\u8981\u306b\u306a\u3063\u305f\u5834\u5408\u306fSemantic-Ex\u89b3\u5bdf\u306b\u8ffd\u52a0\u3057\u3066schema\u3092\u66f4\u65b0\u3059\u308b\u3002"
                        },
                        "minItems": 0
                    },
                    "salesThisMonth": {
                        "title": "\u5f53\u6708\u58f2\u4e0a",
                        "description": "/admin/index \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8fd4\u3059\u5f53\u6708\u58f2\u4e0a\u3002\u4e00\u89a7\u3001\u96c6\u8a08\u3001CSV\u51e6\u7406\u7d50\u679c\u306e\u898f\u6a21\u3092\u8868\u3059\u975e\u8ca0\u306e\u6570\u5024\u3002",
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "orderStatuses": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9\u4e00\u89a7",
                        "description": "/admin/index \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9\u4e00\u89a7\u3002\u914d\u5217\u8981\u7d20\u306fALPS\u610f\u5473\u3068Fake\u89b3\u5bdf\u306b\u57fa\u3065\u304d\u3001\u56fa\u5b9a\u3067\u304d\u306a\u3044\u52d5\u7684\u5217\u306f\u4f8b\u5916\u7406\u7531\u3092\u53f0\u5e33\u5316\u3059\u308b\u3002",
                        "items": {
                            "type": "object",
                            "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                            "description": "/admin/index \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `orderStatuses` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002",
                            "properties": {
                                "name": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 32,
                                    "title": "\u51e6\u7406\u8868\u793a\u540d",
                                    "description": "Fake\u89b3\u5bdf\u6587\u5b57\u9577 1\u301c7; \u89b3\u5bdf\u5024 '\u30c6\u30b9\u30c8\u7ba1\u7406\u8005', '\u526f\u7ba1\u7406\u8005', '\u5e97\u8217\u30aa\u30fc\u30ca\u30fc', '\u524a\u9664\u6e08\u307f\u7ba1\u7406\u8005', 'Red', 'Blue', 'S', 'Color'\u3002",
                                    "example": "\u30c6\u30b9\u30c8\u7ba1\u7406\u8005"
                                },
                                "color": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 255,
                                    "title": "\u8868\u793a\u9805\u76ee",
                                    "description": "/admin/index \u306e\u753b\u9762\u8868\u793a\u306b\u4f7f\u3046\u8868\u793a\u9805\u76ee\u3002\u696d\u52d9\u30a8\u30f3\u30c6\u30a3\u30c6\u30a3\u305d\u306e\u3082\u306e\u3067\u306f\u306a\u304f\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8/\u4e00\u89a7\u8868\u793a\u306e\u88dc\u52a9\u5024\u3002"
                                },
                                "count": {
                                    "type": [
                                        "integer",
                                        "null"
                                    ],
                                    "minimum": 0,
                                    "maximum": 2147483647,
                                    "title": "\u4ef6\u6570",
                                    "description": "/admin/index \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8fd4\u3059\u4ef6\u6570\u3002\u4e00\u89a7\u30fb\u96c6\u8a08\u30fb\u51e6\u7406\u7d50\u679c\u306e\u898f\u6a21\u3092\u8868\u3059\u975e\u8ca0\u6574\u6570\u3002"
                                }
                            },
                            "$comment": "\u914d\u5217\u8981\u7d20\u306f\u30de\u30b9\u30bf/CSV/option map\u306e\u52d5\u7684\u884c\u3067\u3042\u308a\u3001\u5217\u96c6\u5408\u304c\u5bfe\u8c61\u7a2e\u5225\u306b\u3088\u308a\u5909\u308f\u308b\u305f\u3081\u56fa\u5b9ashape\u5316\u3057\u306a\u3044\u3002\u65e2\u77e5property\u306f\u5951\u7d04\u3057\u3001\u8ffd\u52a0\u5217\u306f\u8a72\u5f53\u30b5\u30fc\u30d3\u30b9\u5883\u754c\u3067\u6271\u3046\u3002"
                        },
                        "minItems": 0
                    },
                    "countCustomers": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 2147483647,
                        "title": "\u4f1a\u54e1\u6570",
                        "description": "/admin/index \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8fd4\u3059\u4f1a\u54e1\u6570\u3002\u4e00\u89a7\u3001\u96c6\u8a08\u3001CSV\u51e6\u7406\u7d50\u679c\u306e\u898f\u6a21\u3092\u8868\u3059\u975e\u8ca0\u306e\u6570\u5024\u3002"
                    },
                    "countProducts": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 2147483647,
                        "title": "\u5546\u54c1\u6570",
                        "description": "/admin/index \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8fd4\u3059\u5546\u54c1\u6570\u3002\u4e00\u89a7\u3001\u96c6\u8a08\u3001CSV\u51e6\u7406\u7d50\u679c\u306e\u898f\u6a21\u3092\u8868\u3059\u975e\u8ca0\u306e\u6570\u5024\u3002"
                    },
                    "salesYesterday": {
                        "title": "\u6628\u65e5\u58f2\u4e0a",
                        "description": "/admin/index \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8fd4\u3059\u6628\u65e5\u58f2\u4e0a\u3002\u4e00\u89a7\u3001\u96c6\u8a08\u3001CSV\u51e6\u7406\u7d50\u679c\u306e\u898f\u6a21\u3092\u8868\u3059\u975e\u8ca0\u306e\u6570\u5024\u3002",
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "countNonStockProducts",
                    "salesToday",
                    "recommendedPlugins",
                    "orders",
                    "salesThisMonth",
                    "orderStatuses",
                    "countCustomers",
                    "countProducts",
                    "salesYesterday",
                    "csrfToken"
                ]
            },
            "GET/admin/logResponse": {
                "title": "GET /admin/log response",
                "description": "GET /admin/log response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "log": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u30ed\u30b0\u884c\u4e00\u89a7",
                        "description": "/admin/log \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u30ed\u30b0\u884c\u4e00\u89a7\u3002\u914d\u5217\u8981\u7d20\u306fALPS\u610f\u5473\u3068Fake\u89b3\u5bdf\u306b\u57fa\u3065\u304d\u3001\u56fa\u5b9a\u3067\u304d\u306a\u3044\u52d5\u7684\u5217\u306f\u4f8b\u5916\u7406\u7531\u3092\u53f0\u5e33\u5316\u3059\u308b\u3002",
                        "items": {
                            "type": "string",
                            "title": "\u30ed\u30b0\u884c",
                            "minLength": 0,
                            "maxLength": 255,
                            "description": "/admin/log \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u30ed\u30b0\u884c\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `log` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002"
                        },
                        "minItems": 0
                    },
                    "form": {
                        "type": [
                            "object",
                            "array",
                            "null"
                        ],
                        "title": "\u5165\u529b\u30d5\u30a9\u30fc\u30e0",
                        "description": "Aura/WebForm\u7531\u6765\u306e\u30d5\u30a9\u30fc\u30e0\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3002\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5185\u90e8\u69cb\u9020\u306e\u305f\u3081schema\u3067\u306f\u5b58\u5728\u3068\u578b\u306e\u307f\u3092\u5951\u7d04\u3059\u308b\u3002",
                        "$comment": "Aura/WebForm\u7531\u6765\u306e\u4e0d\u900f\u660e\u30d5\u30a9\u30fc\u30e0\u8868\u73fe\u3002Resource\u5883\u754c\u3067\u306f\u30d5\u30a9\u30fc\u30e0\u306e\u5b58\u5728\u3068\u30b3\u30f3\u30c6\u30ad\u30b9\u30c8\u3060\u3051\u3092\u5951\u7d04\u3057\u3001\u5185\u90e8\u69cb\u9020\u306f\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5883\u754c\u306b\u59d4\u306d\u308b\u305f\u3081\u8ffd\u52a0\u30ad\u30fc\u5236\u7d04\u3092\u7f6e\u304b\u306a\u3044\u3002"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "log"
                ]
            },
            "GET/admin/loginResponse": {
                "title": "GET /admin/login response",
                "description": "GET /admin/login response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "form": {
                        "type": [
                            "object",
                            "array",
                            "null"
                        ],
                        "title": "\u5165\u529b\u30d5\u30a9\u30fc\u30e0",
                        "description": "Aura/WebForm\u7531\u6765\u306e\u30d5\u30a9\u30fc\u30e0\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3002\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5185\u90e8\u69cb\u9020\u306e\u305f\u3081schema\u3067\u306f\u5b58\u5728\u3068\u578b\u306e\u307f\u3092\u5951\u7d04\u3059\u308b\u3002",
                        "$comment": "Aura/WebForm\u7531\u6765\u306e\u4e0d\u900f\u660e\u30d5\u30a9\u30fc\u30e0\u8868\u73fe\u3002Resource\u5883\u754c\u3067\u306f\u30d5\u30a9\u30fc\u30e0\u306e\u5b58\u5728\u3068\u30b3\u30f3\u30c6\u30ad\u30b9\u30c8\u3060\u3051\u3092\u5951\u7d04\u3057\u3001\u5185\u90e8\u69cb\u9020\u306f\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5883\u754c\u306b\u59d4\u306d\u308b\u305f\u3081\u8ffd\u52a0\u30ad\u30fc\u5236\u7d04\u3092\u7f6e\u304b\u306a\u3044\u3002"
                    },
                    "fields": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u9759\u7684\u8868\u793a\u30d5\u30a3\u30fc\u30eb\u30c9",
                        "description": "/admin/login \u3067\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u3078\u6e21\u3059\u8868\u793a\u7528\u30d5\u30a3\u30fc\u30eb\u30c9\u96c6\u5408\u3002\u30d5\u30a9\u30fc\u30e0\u5165\u529b\u5024\u3067\u306f\u306a\u304f\u753b\u9762\u6587\u8108\u30c7\u30fc\u30bf\u3002",
                        "items": {
                            "type": "string",
                            "title": "\u8868\u793a\u30d5\u30a3\u30fc\u30eb\u30c9",
                            "minLength": 0,
                            "maxLength": 255,
                            "description": "/admin/login \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u51e6\u7406\u884c\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `fields` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002"
                        }
                    },
                    "submitTo": {
                        "type": [
                            "object",
                            "null"
                        ],
                        "title": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5148\u30ea\u30f3\u30af",
                        "description": "/admin/login \u306e\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u306b\u4f7f\u3046\u9001\u4fe1\u5148\u30ea\u30f3\u30af\u3002HTTP\u30e1\u30bd\u30c3\u30c9\u3068\u9077\u79fb\u5148\u3092\u307e\u3068\u3081\u3001unsafe\u64cd\u4f5c\u306e\u5165\u53e3\u3092\u660e\u793a\u3059\u308b\u3002",
                        "properties": {
                            "href": {
                                "title": "\u30ea\u30f3\u30afURI\u53c2\u7167\uff08URI\u53c2\u7167\uff09",
                                "description": "\u30da\u30fc\u30b8\u306eURL\u30d1\u30b9\uff08Symfony\u30eb\u30fc\u30c8\u540d\u3002\u4f8b: homepage, product_list\uff09",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "method": {
                                "type": [
                                    "string",
                                    "null"
                                ],
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ],
                                "title": "HTTP\u30e1\u30bd\u30c3\u30c9",
                                "description": "/admin/login \u306e\u30ea\u30f3\u30af\u307e\u305f\u306f\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u3067\u4f7f\u3046HTTP\u30e1\u30bd\u30c3\u30c9\u3002GET/POST\u7b49\u306e\u9077\u79fb\u65b9\u6cd5\u3092\u8868\u3059\u3002"
                            }
                        },
                        "additionalProperties": false,
                        "required": [
                            "href",
                            "method"
                        ]
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "\u3053\u306e\u30ec\u30b9\u30dd\u30f3\u30b9/\u64cd\u4f5c\u304c\u5bfe\u5fdc\u3059\u308bALPS\u9077\u79fbID\u3002\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u306e\u72b6\u614b\u9077\u79fb\u8ffd\u8de1\u306b\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "csrfToken": {
                        "title": "\u51e6\u7406\u8b58\u5225\u5b50",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u306e\u507d\u9020\u3092\u9632\u3050\u305f\u3081\u306b\u9001\u4fe1\u5143\u753b\u9762\u3067\u767a\u884c\u3055\u308c\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "transitionId"
                ]
            },
            "POST/admin/loginResponse": {
                "title": "POST /admin/login response",
                "description": "POST /admin/login response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "name": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u51e6\u7406\u8868\u793a\u540d",
                        "description": "Fake\u89b3\u5bdf\u6587\u5b57\u9577 1\u301c7; \u89b3\u5bdf\u5024 '\u30c6\u30b9\u30c8\u7ba1\u7406\u8005', '\u526f\u7ba1\u7406\u8005', '\u5e97\u8217\u30aa\u30fc\u30ca\u30fc', '\u524a\u9664\u6e08\u307f\u7ba1\u7406\u8005', 'Red', 'Blue', 'S', 'Color'\u3002",
                        "example": "\u30c6\u30b9\u30c8\u7ba1\u7406\u8005"
                    },
                    "loginId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u30ed\u30b0\u30a4\u30f3ID",
                        "description": "\u7ba1\u7406\u753b\u9762\u30ed\u30b0\u30a4\u30f3\u7528\u306eID\u3002\u4e00\u610f Fake\u89b3\u5bdf\u6587\u5b57\u9577 6\u301c13; \u89b3\u5bdf\u5024 'test-admin', 'shop-owner', 'deputy', 'deleted-admin', 'unknown-user'\u3002",
                        "example": "test-admin",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    },
                    "authority": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 9,
                        "title": "\u6a29\u9650",
                        "description": "\u7ba1\u7406\u8005\u6a29\u9650\u30ec\u30d9\u30eb\u30020=\u30b7\u30b9\u30c6\u30e0\u7ba1\u7406\u8005\uff08\u6700\u9ad8\u6a29\u9650\u3001\u5168\u6a5f\u80fd\u30a2\u30af\u30bb\u30b9\u53ef\u80fd\uff09, 1=\u5e97\u8217\u30aa\u30fc\u30ca\u30fc\uff08\u5236\u9650\u3042\u308a\u3001denyUrl\u3067\u5236\u9650\u3055\u308c\u305fURL\u306b\u30a2\u30af\u30bb\u30b9\u4e0d\u53ef\uff09\u3002\u6570\u5024\u304c\u5c0f\u3055\u3044\u307b\u3069\u6a29\u9650\u304c\u9ad8\u3044\u3002AuthorityRole\u306eURL\u62d2\u5426\u30d1\u30bf\u30fc\u30f3\u3067\u30a2\u30af\u30bb\u30b9\u5236\u5fa1 Fake\u89b3\u5bdf\u6570\u5024 0\u301c1; \u89b3\u5bdf\u5024 '1', '0'\u3002",
                        "example": 1
                    },
                    "adminId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u7ba1\u7406\u8005ID",
                        "description": "\u7ba1\u7406\u8005\u30e1\u30f3\u30d0\u30fc\u3092\u8b58\u5225\u3059\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002Fake \u3068 SQL \u306e ID \u5f62\u72b6\u5dee\u3092\u96a0\u3059\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 32\u301c32; \u89b3\u5bdf\u5024 'ad000000000000000000000000000001', 'ad000000000000000000000000000002', 'ad000000000000000000000000000003', 'ad000000000000000000000000000004'\u3002",
                        "example": "ad000000000000000000000000000001",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "name",
                    "loginId",
                    "authority",
                    "adminId"
                ]
            },
            "GET/admin/login-historyResponse": {
                "title": "GET /admin/login-history response",
                "description": "GET /admin/login-history response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "entries": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u30ed\u30b0\u30a4\u30f3\u5c65\u6b74\u4e00\u89a7",
                        "description": "/admin/login-history \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u30ed\u30b0\u30a4\u30f3\u5c65\u6b74\u4e00\u89a7\u3002\u914d\u5217\u8981\u7d20\u306fALPS\u610f\u5473\u3068Fake\u89b3\u5bdf\u306b\u57fa\u3065\u304d\u3001\u56fa\u5b9a\u3067\u304d\u306a\u3044\u52d5\u7684\u5217\u306f\u4f8b\u5916\u7406\u7531\u3092\u53f0\u5e33\u5316\u3059\u308b\u3002",
                        "items": {
                            "type": [
                                "object",
                                "null"
                            ],
                            "title": "\u30ed\u30b0\u30a4\u30f3\u5c65\u6b74",
                            "description": "/admin/login-history \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u30ed\u30b0\u30a4\u30f3\u5c65\u6b74\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `entries` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002",
                            "properties": {
                                "clientIp": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 32,
                                    "title": "\u30af\u30e9\u30a4\u30a2\u30f3\u30c8IP",
                                    "description": "\u30ed\u30b0\u30a4\u30f3\u8a66\u884c\u5143\u306eIP\u30a2\u30c9\u30ec\u30b9\u3002\u30bb\u30ad\u30e5\u30ea\u30c6\u30a3\u76e3\u67fb\u7528 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c12; \u89b3\u5bdf\u5024 '192.0.2.10', '203.0.113.45', '198.51.100.7', '203.0.113.99'\u3002",
                                    "example": "192.0.2.10"
                                },
                                "success": {
                                    "type": [
                                        "boolean",
                                        "null"
                                    ],
                                    "title": "\u51e6\u7406\u4e00\u89a7",
                                    "description": "\u89b3\u5bdf\u5024 'true', 'false'\u3002",
                                    "example": "true"
                                },
                                "timestamp": {
                                    "title": "\u51e6\u7406\u6d3e\u751f\u9805\u76ee",
                                    "description": "Fake\u89b3\u5bdf\u6587\u5b57\u9577 25\u301c25; \u89b3\u5bdf\u5024 '2026-05-19T09:12:34+09:00', '2026-05-18T22:08:01+09:00', '2026-05-18T18:55:12+09:00', '2026-05-18T08:00:00+09:00'\u3002",
                                    "type": "string",
                                    "example": "2026-05-19T09:12:34+09:00",
                                    "pattern": "^\\d{4}-\\d{2}-\\d{2}([ T]\\d{2}:\\d{2}:\\d{2}([+-]\\d{2}:?\\d{2}|Z)?)?$"
                                },
                                "loginId": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "title": "\u30ed\u30b0\u30a4\u30f3ID",
                                    "description": "\u7ba1\u7406\u753b\u9762\u30ed\u30b0\u30a4\u30f3\u7528\u306eID\u3002\u4e00\u610f Fake\u89b3\u5bdf\u6587\u5b57\u9577 6\u301c13; \u89b3\u5bdf\u5024 'test-admin', 'shop-owner', 'deputy', 'deleted-admin', 'unknown-user'\u3002",
                                    "example": "test-admin",
                                    "minLength": 0,
                                    "maxLength": 128,
                                    "pattern": "^[A-Za-z0-9._:@/-]*$",
                                    "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                                }
                            },
                            "additionalProperties": false,
                            "$comment": "\u914d\u5217\u8981\u7d20\u306fFake/Resource\u3067\u89b3\u5bdf\u3055\u308c\u305f\u65e2\u77e5property\u306b\u56fa\u5b9a\u3059\u308b\u3002\u65b0\u3057\u3044\u5217\u304c\u5fc5\u8981\u306b\u306a\u3063\u305f\u5834\u5408\u306fSemantic-Ex\u89b3\u5bdf\u306b\u8ffd\u52a0\u3057\u3066schema\u3092\u66f4\u65b0\u3059\u308b\u3002"
                        },
                        "minItems": 0
                    },
                    "count": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 2147483647,
                        "title": "\u4ef6\u6570",
                        "description": "/admin/login-history \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8fd4\u3059\u4ef6\u6570\u3002\u4e00\u89a7\u30fb\u96c6\u8a08\u30fb\u51e6\u7406\u7d50\u679c\u306e\u898f\u6a21\u3092\u8868\u3059\u975e\u8ca0\u6574\u6570\u3002"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "entries",
                    "count"
                ]
            },
            "POST/admin/logoutResponse": {
                "title": "POST /admin/logout response",
                "description": "POST /admin/logout response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "message": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u51e6\u7406\u30e1\u30c3\u30bb\u30fc\u30b8",
                        "description": "/admin/logout \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u51e6\u7406\u7d50\u679c\u30e1\u30c3\u30bb\u30fc\u30b8\u3002\u6ce8\u6587\u6642\u304a\u554f\u3044\u5408\u308f\u305b\u6b04\u3067\u306f\u306a\u304f\u3001\u753b\u9762\u9077\u79fb\u3084\u5b8c\u4e86\u8868\u793a\u306e\u305f\u3081\u306e\u901a\u77e5\u6587\u3002",
                        "example": "\u914d\u9001\u306f\u5e73\u65e5\u5e0c\u671b\u3067\u3059\u3002"
                    },
                    "wasLoggedIn": {
                        "type": [
                            "boolean",
                            "null"
                        ],
                        "title": "\u30ed\u30b0\u30a4\u30f3\u6e08\u307f\u7d50\u679c",
                        "description": "/admin/logout \u306e\u51e6\u7406\u72b6\u614b\u3092\u793a\u3059\u30ed\u30b0\u30a4\u30f3\u6e08\u307f\u7d50\u679c\u3002\u753b\u9762\u8868\u793a\u3084\u51aa\u7b49\u51e6\u7406\u7d50\u679c\u306e\u5206\u5c90\u306b\u4f7f\u3046\u771f\u507d\u5024\u3002"
                    },
                    "adminId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u7ba1\u7406\u8005ID",
                        "description": "\u7ba1\u7406\u8005\u30e1\u30f3\u30d0\u30fc\u3092\u8b58\u5225\u3059\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002Fake \u3068 SQL \u306e ID \u5f62\u72b6\u5dee\u3092\u96a0\u3059\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 32\u301c32; \u89b3\u5bdf\u5024 'ad000000000000000000000000000001', 'ad000000000000000000000000000002', 'ad000000000000000000000000000003', 'ad000000000000000000000000000004'\u3002",
                        "example": "ad000000000000000000000000000001",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "wasLoggedIn",
                    "adminId"
                ]
            },
            "GET/admin/mail-templateResponse": {
                "title": "GET /admin/mail-template response",
                "description": "GET /admin/mail-template response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "form": {
                        "type": [
                            "object",
                            "array",
                            "null"
                        ],
                        "title": "\u5165\u529b\u30d5\u30a9\u30fc\u30e0",
                        "description": "Aura/WebForm\u7531\u6765\u306e\u30d5\u30a9\u30fc\u30e0\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3002\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5185\u90e8\u69cb\u9020\u306e\u305f\u3081schema\u3067\u306f\u5b58\u5728\u3068\u578b\u306e\u307f\u3092\u5951\u7d04\u3059\u308b\u3002",
                        "$comment": "Aura/WebForm\u7531\u6765\u306e\u4e0d\u900f\u660e\u30d5\u30a9\u30fc\u30e0\u8868\u73fe\u3002Resource\u5883\u754c\u3067\u306f\u30d5\u30a9\u30fc\u30e0\u306e\u5b58\u5728\u3068\u30b3\u30f3\u30c6\u30ad\u30b9\u30c8\u3060\u3051\u3092\u5951\u7d04\u3057\u3001\u5185\u90e8\u69cb\u9020\u306f\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5883\u754c\u306b\u59d4\u306d\u308b\u305f\u3081\u8ffd\u52a0\u30ad\u30fc\u5236\u7d04\u3092\u7f6e\u304b\u306a\u3044\u3002"
                    },
                    "mailTemplates": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u30e1\u30fc\u30eb\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u4e00\u89a7",
                        "description": "/admin/mail-template \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u30e1\u30fc\u30eb\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u4e00\u89a7\u3002ALPS\u3001Fake\u89b3\u5bdf\u3001Resource\u5883\u754c\u306e\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305f\u696d\u52d9\u5951\u7d04\u3002",
                        "items": {
                            "type": [
                                "object",
                                "null"
                            ],
                            "title": "\u30e1\u30fc\u30eb\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8",
                            "description": "/admin/mail-template \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u30e1\u30fc\u30eb\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `mailTemplates` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002",
                            "properties": {
                                "mailTemplateId": {
                                    "type": [
                                        "integer",
                                        "null"
                                    ],
                                    "minimum": 0,
                                    "maximum": 2147483647,
                                    "title": "\u30e1\u30fc\u30eb\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8ID",
                                    "description": "dtb_mail_template.id\uff08int unsigned AUTO_INCREMENT\uff09\u306e\u6b63\u306e\u6574\u6570\u4e3b\u30ad\u30fc\u3002doUpdateMailTemplate \u306e\u5fc5\u9808\u5165\u529b\u3067\u3001\u65e2\u5b58\u884c\u3092\u6307\u3059\u5fc5\u8981\u304c\u3042\u308b\u3002SqlMailTemplateStorage \u306f findById / update \u3092\u3053\u306e id \u3067\u5f15\u304d\u3001\u672a\u77e5 id \u306f MailTemplateNotFoundException\uff08404\uff09\u3002\u65b0\u898f\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u4f5c\u6210\u30d5\u30ed\u30fc\u306f file_name \u8a2d\u5b9a\u3068 Twig \u30d5\u30a1\u30a4\u30eb\u66f8\u304d\u51fa\u3057\u3092\u4f34\u3046\u305f\u3081 Phase 2 scope \u3067\u3042\u308a\u3001ID \u751f\u6210\u5668\u306f\u5b58\u5728\u3057\u306a\u3044\uff08\u66f4\u65b0\u5c02\u7528\u5951\u7d04\uff09 Fake\u89b3\u5bdf\u6570\u5024 1\u301c2; \u89b3\u5bdf\u5024 '1', '2'\u3002",
                                    "example": 1,
                                    "$comment": "EC-CUBE\u5074\u306e\u63a1\u756aID\u3068\u3057\u3066\u6271\u3046\u3002"
                                },
                                "mailTemplateName": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 32,
                                    "title": "\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u540d",
                                    "description": "\u30e1\u30fc\u30eb\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u306e\u8868\u793a\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 7\u301c9; \u89b3\u5bdf\u5024 '\u6ce8\u6587\u5b8c\u4e86\u30e1\u30fc\u30eb', '\u4f1a\u54e1\u767b\u9332\u5b8c\u4e86\u30e1\u30fc\u30eb'\u3002",
                                    "example": "\u6ce8\u6587\u5b8c\u4e86\u30e1\u30fc\u30eb"
                                },
                                "fileName": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 1,
                                    "maxLength": 255,
                                    "title": "\u30d5\u30a1\u30a4\u30eb\u540d",
                                    "description": "\u5546\u54c1\u753b\u50cf\u306e\u30d5\u30a1\u30a4\u30eb\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 12\u301c15; \u89b3\u5bdf\u5024 'Mail/order.twig', 'Mail/entry.twig', 'sample-a.jpg', 'sample-b.jpg'\u3002",
                                    "example": "Mail/order.twig"
                                },
                                "mailSubject": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 32,
                                    "title": "\u30e1\u30fc\u30eb\u4ef6\u540d",
                                    "description": "\u30e1\u30fc\u30eb\u306e\u4ef6\u540d\u3002\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u5909\u6570\u3092\u542b\u3080\u5834\u5408\u3042\u308a Fake\u89b3\u5bdf\u6587\u5b57\u9577 13\u301c13; \u89b3\u5bdf\u5024 '\u3054\u6ce8\u6587\u3042\u308a\u304c\u3068\u3046\u3054\u3056\u3044\u307e\u3059'\u3002",
                                    "example": "\u3054\u6ce8\u6587\u3042\u308a\u304c\u3068\u3046\u3054\u3056\u3044\u307e\u3059"
                                },
                                "isDeletable": {
                                    "type": [
                                        "boolean",
                                        "null"
                                    ],
                                    "title": "\u524a\u9664\u53ef\u80fd\u30d5\u30e9\u30b0",
                                    "description": "dtb_mail_template.deletable \u7531\u6765\u306e\u524a\u9664\u53ef\u80fd\u30d5\u30e9\u30b0\u3002\u7ba1\u7406\u753b\u9762\u306e\u524a\u9664 affordance \u8868\u793a\u306b\u4f7f\u3046\u3002"
                                }
                            },
                            "additionalProperties": false,
                            "$comment": "\u914d\u5217\u8981\u7d20\u306fFake/Resource\u3067\u89b3\u5bdf\u3055\u308c\u305f\u65e2\u77e5property\u306b\u56fa\u5b9a\u3059\u308b\u3002\u65b0\u3057\u3044\u5217\u304c\u5fc5\u8981\u306b\u306a\u3063\u305f\u5834\u5408\u306fSemantic-Ex\u89b3\u5bdf\u306b\u8ffd\u52a0\u3057\u3066schema\u3092\u66f4\u65b0\u3059\u308b\u3002"
                        },
                        "minItems": 0
                    },
                    "id": {
                        "type": [
                            "string",
                            "integer",
                            "null"
                        ],
                        "title": "ID",
                        "description": "Fake\u89b3\u5bdf\u6587\u5b57\u9577 13\u301c32; \u89b3\u5bdf\u5024 'ad000000000000000000000000000001', 'ad000000000000000000000000000003', 'fedcba9876543210fedcba9876543210', '10000000aaaa1111bbbb2222cccc3333', 'ad000000000000000000000000000002', '0123456789abcdef0123456789abcdef', 'aaaaaaaa00000000bbbbbbbb11111111', '20000000dddd2222eeee3333ffff4444'\u3002",
                        "example": "ad000000000000000000000000000001",
                        "minLength": 0,
                        "maxLength": 128,
                        "$comment": "Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u305f\u3081\u3001\u3053\u306e\u5883\u754c\u3060\u3051mixedBoundaryId\u3068\u3057\u3066\u6271\u3046\u3002"
                    },
                    "count": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 2147483647,
                        "title": "\u4ef6\u6570",
                        "description": "/admin/mail-template \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8fd4\u3059\u4ef6\u6570\u3002\u4e00\u89a7\u30fb\u96c6\u8a08\u30fb\u51e6\u7406\u7d50\u679c\u306e\u898f\u6a21\u3092\u8868\u3059\u975e\u8ca0\u6574\u6570\u3002"
                    },
                    "csrfToken": {
                        "$ref": "#/$defs/csrfToken"
                    },
                    "Mail": {
                        "type": [
                            "object",
                            "null"
                        ],
                        "title": "\u30e1\u30fc\u30eb\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u8a73\u7d30",
                        "description": "/admin/mail-template \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u30e1\u30fc\u30eb\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u8a73\u7d30\u3002ALPS\u3001Fake\u89b3\u5bdf\u3001Resource\u5883\u754c\u306e\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305f\u696d\u52d9\u5951\u7d04\u3002",
                        "properties": {
                            "id": {
                                "type": [
                                    "string",
                                    "integer",
                                    "null"
                                ],
                                "title": "ID",
                                "description": "Fake\u89b3\u5bdf\u6587\u5b57\u9577 13\u301c32; \u89b3\u5bdf\u5024 'ad000000000000000000000000000001', 'ad000000000000000000000000000003', 'fedcba9876543210fedcba9876543210', '10000000aaaa1111bbbb2222cccc3333', 'ad000000000000000000000000000002', '0123456789abcdef0123456789abcdef', 'aaaaaaaa00000000bbbbbbbb11111111', '20000000dddd2222eeee3333ffff4444'\u3002",
                                "example": "ad000000000000000000000000000001",
                                "minLength": 0,
                                "maxLength": 128,
                                "$comment": "Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u305f\u3081\u3001\u3053\u306e\u5883\u754c\u3060\u3051mixedBoundaryId\u3068\u3057\u3066\u6271\u3046\u3002"
                            },
                            "isDeletable": {
                                "type": [
                                    "boolean",
                                    "null"
                                ],
                                "title": "\u524a\u9664\u53ef\u80fd\u30d5\u30e9\u30b0",
                                "description": "/admin/mail-template \u306e\u51e6\u7406\u72b6\u614b\u3092\u793a\u3059\u524a\u9664\u53ef\u80fd\u30d5\u30e9\u30b0\u3002\u753b\u9762\u8868\u793a\u3084\u51aa\u7b49\u51e6\u7406\u7d50\u679c\u306e\u5206\u5c90\u306b\u4f7f\u3046\u771f\u507d\u5024\u3002"
                            },
                            "file_name": {
                                "type": [
                                    "string",
                                    "null"
                                ],
                                "minLength": 0,
                                "maxLength": 255,
                                "title": "\u30d5\u30a1\u30a4\u30eb\u540d",
                                "description": "/admin/mail-template \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u904b\u3076\u30d5\u30a1\u30a4\u30eb\u540d\u3002CSV/PDF/\u30ed\u30b0\u7b49\u306e\u5185\u90e8\u5f62\u5f0f\u306f\u5c02\u7528\u5883\u754c\u3067\u6271\u3044\u3001JSON Schema\u3067\u306f\u8f38\u9001\u4e0a\u306e\u578b\u3068\u30b5\u30a4\u30ba\u3092\u5951\u7d04\u3059\u308b\u3002"
                            }
                        },
                        "additionalProperties": false,
                        "required": [
                            "id",
                            "isDeletable",
                            "file_name"
                        ]
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "mailTemplates",
                    "id",
                    "count",
                    "csrfToken"
                ]
            },
            "POST/admin/mail-templateResponse": {
                "title": "POST /admin/mail-template response",
                "description": "POST /admin/mail-template response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "mailTemplateId": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 2147483647,
                        "title": "\u30e1\u30fc\u30eb\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8ID",
                        "description": "dtb_mail_template.id\uff08int unsigned AUTO_INCREMENT\uff09\u306e\u6b63\u306e\u6574\u6570\u4e3b\u30ad\u30fc\u3002doUpdateMailTemplate \u306e\u5fc5\u9808\u5165\u529b\u3067\u3001\u65e2\u5b58\u884c\u3092\u6307\u3059\u5fc5\u8981\u304c\u3042\u308b\u3002SqlMailTemplateStorage \u306f findById / update \u3092\u3053\u306e id \u3067\u5f15\u304d\u3001\u672a\u77e5 id \u306f MailTemplateNotFoundException\uff08404\uff09\u3002\u65b0\u898f\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u4f5c\u6210\u30d5\u30ed\u30fc\u306f file_name \u8a2d\u5b9a\u3068 Twig \u30d5\u30a1\u30a4\u30eb\u66f8\u304d\u51fa\u3057\u3092\u4f34\u3046\u305f\u3081 Phase 2 scope \u3067\u3042\u308a\u3001ID \u751f\u6210\u5668\u306f\u5b58\u5728\u3057\u306a\u3044\uff08\u66f4\u65b0\u5c02\u7528\u5951\u7d04\uff09 Fake\u89b3\u5bdf\u6570\u5024 1\u301c2; \u89b3\u5bdf\u5024 '1', '2'\u3002",
                        "example": 1,
                        "$comment": "EC-CUBE\u5074\u306e\u63a1\u756aID\u3068\u3057\u3066\u6271\u3046\u3002"
                    },
                    "mailTemplateName": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u540d",
                        "description": "\u30e1\u30fc\u30eb\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u306e\u8868\u793a\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 7\u301c9; \u89b3\u5bdf\u5024 '\u6ce8\u6587\u5b8c\u4e86\u30e1\u30fc\u30eb', '\u4f1a\u54e1\u767b\u9332\u5b8c\u4e86\u30e1\u30fc\u30eb'\u3002",
                        "example": "\u6ce8\u6587\u5b8c\u4e86\u30e1\u30fc\u30eb"
                    },
                    "fileName": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 1,
                        "maxLength": 255,
                        "title": "\u30d5\u30a1\u30a4\u30eb\u540d",
                        "description": "\u5546\u54c1\u753b\u50cf\u306e\u30d5\u30a1\u30a4\u30eb\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 12\u301c15; \u89b3\u5bdf\u5024 'Mail/order.twig', 'Mail/entry.twig', 'sample-a.jpg', 'sample-b.jpg'\u3002",
                        "example": "Mail/order.twig"
                    },
                    "changed": {
                        "type": [
                            "boolean",
                            "null"
                        ],
                        "title": "\u51e6\u7406\u72b6\u614b\u30d5\u30e9\u30b0",
                        "description": "Fake\u89b3\u5bdf\u6570\u5024 1\u301c1; \u89b3\u5bdf\u5024 '1'\u3002",
                        "example": "1"
                    },
                    "mailSubject": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u30e1\u30fc\u30eb\u4ef6\u540d",
                        "description": "\u30e1\u30fc\u30eb\u306e\u4ef6\u540d\u3002\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u5909\u6570\u3092\u542b\u3080\u5834\u5408\u3042\u308a Fake\u89b3\u5bdf\u6587\u5b57\u9577 13\u301c13; \u89b3\u5bdf\u5024 '\u3054\u6ce8\u6587\u3042\u308a\u304c\u3068\u3046\u3054\u3056\u3044\u307e\u3059'\u3002",
                        "example": "\u3054\u6ce8\u6587\u3042\u308a\u304c\u3068\u3046\u3054\u3056\u3044\u307e\u3059"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "mailTemplateId",
                    "mailTemplateName",
                    "fileName",
                    "changed",
                    "mailSubject"
                ]
            },
            "DELETE/admin/mail-templateResponse": {
                "title": "DELETE /admin/mail-template response",
                "description": "DELETE /admin/mail-template response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "mailTemplateId": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 2147483647,
                        "title": "\u30e1\u30fc\u30eb\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8ID",
                        "description": "dtb_mail_template.id\uff08int unsigned AUTO_INCREMENT\uff09\u306e\u6b63\u306e\u6574\u6570\u4e3b\u30ad\u30fc\u3002doUpdateMailTemplate \u306e\u5fc5\u9808\u5165\u529b\u3067\u3001\u65e2\u5b58\u884c\u3092\u6307\u3059\u5fc5\u8981\u304c\u3042\u308b\u3002SqlMailTemplateStorage \u306f findById / update \u3092\u3053\u306e id \u3067\u5f15\u304d\u3001\u672a\u77e5 id \u306f MailTemplateNotFoundException\uff08404\uff09\u3002\u65b0\u898f\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u4f5c\u6210\u30d5\u30ed\u30fc\u306f file_name \u8a2d\u5b9a\u3068 Twig \u30d5\u30a1\u30a4\u30eb\u66f8\u304d\u51fa\u3057\u3092\u4f34\u3046\u305f\u3081 Phase 2 scope \u3067\u3042\u308a\u3001ID \u751f\u6210\u5668\u306f\u5b58\u5728\u3057\u306a\u3044\uff08\u66f4\u65b0\u5c02\u7528\u5951\u7d04\uff09 Fake\u89b3\u5bdf\u6570\u5024 1\u301c2; \u89b3\u5bdf\u5024 '1', '2'\u3002",
                        "example": 1,
                        "$comment": "EC-CUBE\u5074\u306e\u63a1\u756aID\u3068\u3057\u3066\u6271\u3046\u3002"
                    },
                    "mailTemplateName": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u540d",
                        "description": "\u30e1\u30fc\u30eb\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u306e\u8868\u793a\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 7\u301c9; \u89b3\u5bdf\u5024 '\u6ce8\u6587\u5b8c\u4e86\u30e1\u30fc\u30eb', '\u4f1a\u54e1\u767b\u9332\u5b8c\u4e86\u30e1\u30fc\u30eb'\u3002",
                        "example": "\u6ce8\u6587\u5b8c\u4e86\u30e1\u30fc\u30eb"
                    },
                    "fileName": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 1,
                        "maxLength": 255,
                        "title": "\u30d5\u30a1\u30a4\u30eb\u540d",
                        "description": "\u5546\u54c1\u753b\u50cf\u306e\u30d5\u30a1\u30a4\u30eb\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 12\u301c15; \u89b3\u5bdf\u5024 'Mail/order.twig', 'Mail/entry.twig', 'sample-a.jpg', 'sample-b.jpg'\u3002",
                        "example": "Mail/order.twig"
                    },
                    "message": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u51e6\u7406\u30e1\u30c3\u30bb\u30fc\u30b8",
                        "description": "/admin/mail-template \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u51e6\u7406\u7d50\u679c\u30e1\u30c3\u30bb\u30fc\u30b8\u3002\u6ce8\u6587\u6642\u304a\u554f\u3044\u5408\u308f\u305b\u6b04\u3067\u306f\u306a\u304f\u3001\u753b\u9762\u9077\u79fb\u3084\u5b8c\u4e86\u8868\u793a\u306e\u305f\u3081\u306e\u901a\u77e5\u6587\u3002",
                        "example": "\u914d\u9001\u306f\u5e73\u65e5\u5e0c\u671b\u3067\u3059\u3002"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "\u3053\u306e\u30ec\u30b9\u30dd\u30f3\u30b9/\u64cd\u4f5c\u304c\u5bfe\u5fdc\u3059\u308bALPS\u9077\u79fbID\u3002\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u306e\u72b6\u614b\u9077\u79fb\u8ffd\u8de1\u306b\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "mailTemplateId",
                    "mailTemplateName",
                    "fileName",
                    "transitionId"
                ]
            },
            "GET/admin/master-dataResponse": {
                "title": "GET /admin/master-data response",
                "description": "GET /admin/master-data response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "form": {
                        "type": [
                            "object",
                            "array",
                            "null"
                        ],
                        "title": "\u5165\u529b\u30d5\u30a9\u30fc\u30e0",
                        "description": "Aura/WebForm\u7531\u6765\u306e\u30d5\u30a9\u30fc\u30e0\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3002\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5185\u90e8\u69cb\u9020\u306e\u305f\u3081schema\u3067\u306f\u5b58\u5728\u3068\u578b\u306e\u307f\u3092\u5951\u7d04\u3059\u308b\u3002",
                        "$comment": "Aura/WebForm\u7531\u6765\u306e\u4e0d\u900f\u660e\u30d5\u30a9\u30fc\u30e0\u8868\u73fe\u3002Resource\u5883\u754c\u3067\u306f\u30d5\u30a9\u30fc\u30e0\u306e\u5b58\u5728\u3068\u30b3\u30f3\u30c6\u30ad\u30b9\u30c8\u3060\u3051\u3092\u5951\u7d04\u3057\u3001\u5185\u90e8\u69cb\u9020\u306f\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5883\u754c\u306b\u59d4\u306d\u308b\u305f\u3081\u8ffd\u52a0\u30ad\u30fc\u5236\u7d04\u3092\u7f6e\u304b\u306a\u3044\u3002"
                    },
                    "csrfToken": {
                        "type": "string",
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002\u7ba1\u7406\u8005\u5411\u3051\u30de\u30b9\u30bf\u30c7\u30fc\u30bf\u9078\u629e\u30d5\u30a9\u30fc\u30e0\u306b\u4f7f\u7528\u3002",
                        "minLength": 1,
                        "maxLength": 160
                    },
                    "submitTo": {
                        "type": [
                            "object",
                            "null"
                        ],
                        "title": "\u9001\u4fe1\u5148",
                        "description": "/admin/master-data \u306e\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5148\u3002unsafe \u64cd\u4f5c\u306f\u3053\u306e action \u304b\u3089\u8fbf\u308b\u3002",
                        "additionalProperties": false,
                        "properties": {
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "PUT"
                                ]
                            },
                            "href": {
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048
                            }
                        },
                        "required": [
                            "rel",
                            "method",
                            "href"
                        ]
                    },
                    "masterTypes": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u30de\u30b9\u30bf\u7a2e\u5225\u4e00\u89a7",
                        "description": "/admin/master-data \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u30de\u30b9\u30bf\u7a2e\u5225\u4e00\u89a7\u3002\u914d\u5217\u8981\u7d20\u306fALPS\u610f\u5473\u3068Fake\u89b3\u5bdf\u306b\u57fa\u3065\u304d\u3001\u56fa\u5b9a\u3067\u304d\u306a\u3044\u52d5\u7684\u5217\u306f\u4f8b\u5916\u7406\u7531\u3092\u53f0\u5e33\u5316\u3059\u308b\u3002",
                        "items": {
                            "type": [
                                "object",
                                "null"
                            ],
                            "title": "\u30de\u30b9\u30bf\u7a2e\u5225",
                            "description": "/admin/master-data \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u30de\u30b9\u30bf\u7a2e\u5225\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `masterTypes` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002",
                            "properties": {
                                "table": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 255,
                                    "title": "\u30de\u30b9\u30bf\u30c6\u30fc\u30d6\u30eb",
                                    "description": "/admin/master-data \u306e\u753b\u9762\u8868\u793a\u306b\u4f7f\u3046\u30de\u30b9\u30bf\u30c6\u30fc\u30d6\u30eb\u3002\u696d\u52d9\u30a8\u30f3\u30c6\u30a3\u30c6\u30a3\u305d\u306e\u3082\u306e\u3067\u306f\u306a\u304f\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8/\u4e00\u89a7\u8868\u793a\u306e\u88dc\u52a9\u5024\u3002"
                                },
                                "label": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 255,
                                    "title": "\u8868\u793a\u30e9\u30d9\u30eb",
                                    "description": "/admin/master-data \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8868\u793a\u307e\u305f\u306f\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u63cf\u753b\u306b\u4f7f\u3046\u8868\u793a\u30e9\u30d9\u30eb\u3002\u540c\u540dproperty\u3067\u3082\u89aa\u6587\u8108 `root` \u306b\u3088\u3063\u3066\u610f\u5473\u3092\u5206\u3051\u308b\u3002"
                                },
                                "value": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 255,
                                    "title": "\u30de\u30b9\u30bf\u5024",
                                    "description": "/admin/master-data \u306e\u30de\u30b9\u30bf\u7a2e\u5225\u307e\u305f\u306f\u30de\u30b9\u30bf\u884c\u306b\u8868\u793a\u3055\u308c\u308b\u5024\u3002\u9078\u629e\u80a2\u306e\u8868\u793a/\u4fdd\u5b58\u5358\u4f4d\u3068\u3057\u3066\u6271\u3046\u3002"
                                }
                            },
                            "$comment": "\u914d\u5217\u8981\u7d20\u306f\u30de\u30b9\u30bf/CSV/option map\u306e\u52d5\u7684\u884c\u3067\u3042\u308a\u3001\u5217\u96c6\u5408\u304c\u5bfe\u8c61\u7a2e\u5225\u306b\u3088\u308a\u5909\u308f\u308b\u305f\u3081\u56fa\u5b9ashape\u5316\u3057\u306a\u3044\u3002\u65e2\u77e5property\u306f\u5951\u7d04\u3057\u3001\u8ffd\u52a0\u5217\u306f\u8a72\u5f53\u30b5\u30fc\u30d3\u30b9\u5883\u754c\u3067\u6271\u3046\u3002"
                        },
                        "minItems": 0
                    },
                    "selectedMaster": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 255,
                        "title": "\u9078\u629e\u4e2d\u30de\u30b9\u30bf",
                        "description": "/admin/master-data \u306e\u51e6\u7406\u6587\u8108\u304b\u3089\u6d3e\u751f\u3057\u305f\u9078\u629e\u4e2d\u30de\u30b9\u30bf\u3002ALPS\u57fa\u790e\u8a9e\u3060\u3051\u3067\u306f\u5358\u4f4d\u3084\u7528\u9014\u304c\u4e0d\u8db3\u3059\u308b\u305f\u3081\u3001\u3053\u306eResource\u4e0a\u306e\u610f\u5473\u3092\u660e\u793a\u3059\u308b\u3002"
                    },
                    "rows": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u884c\u30c7\u30fc\u30bf",
                        "description": "/admin/master-data \u306e\u30de\u30b9\u30bf/CSV\u884c\u30c7\u30fc\u30bf\u3002\u5217\u96c6\u5408\u306f\u5bfe\u8c61\u30de\u30b9\u30bf\u306b\u3088\u308a\u5909\u308f\u308b\u305f\u3081\u3001\u65e2\u77e5\u5217\u3092\u512a\u5148\u3057\u3066\u5951\u7d04\u3059\u308b\u3002",
                        "items": {
                            "type": [
                                "object",
                                "null"
                            ],
                            "title": "\u884c",
                            "description": "/admin/master-data \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u884c\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `rows` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002",
                            "properties": {
                                "name": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 255,
                                    "title": "\u51e6\u7406\u8868\u793a\u540d",
                                    "description": "\u30de\u30b9\u30bf\u884c\u306e\u8868\u793a\u540d\u3002\u652f\u6255\u65b9\u6cd5\u3001\u914d\u9001\u65b9\u6cd5\u3001\u30cb\u30e5\u30fc\u30b9\u3001\u898f\u683c\u306a\u3069\u8907\u6570\u306eSQL-backed master\u3092\u4ee3\u8868\u3059\u308b\u305f\u3081\u3001Fake\u89b3\u5bdf\u5024\u3060\u3051\u3067\u306a\u304fEC-CUBE\u5074\u306e\u8868\u793a\u540d\u4e0a\u9650\u306b\u5408\u308f\u305b\u308b\u3002",
                                    "example": "\u30c6\u30b9\u30c8\u7ba1\u7406\u8005"
                                },
                                "id": {
                                    "type": [
                                        "string",
                                        "integer",
                                        "null"
                                    ],
                                    "title": "ID",
                                    "description": "Fake\u89b3\u5bdf\u6587\u5b57\u9577 13\u301c32; \u89b3\u5bdf\u5024 'ad000000000000000000000000000001', 'ad000000000000000000000000000003', 'fedcba9876543210fedcba9876543210', '10000000aaaa1111bbbb2222cccc3333', 'ad000000000000000000000000000002', '0123456789abcdef0123456789abcdef', 'aaaaaaaa00000000bbbbbbbb11111111', '20000000dddd2222eeee3333ffff4444'\u3002",
                                    "example": "ad000000000000000000000000000001",
                                    "minLength": 0,
                                    "maxLength": 128,
                                    "$comment": "Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u305f\u3081\u3001\u3053\u306e\u5883\u754c\u3060\u3051mixedBoundaryId\u3068\u3057\u3066\u6271\u3046\u3002"
                                }
                            },
                            "$comment": "\u914d\u5217\u8981\u7d20\u306f\u30de\u30b9\u30bf/CSV/option map\u306e\u52d5\u7684\u884c\u3067\u3042\u308a\u3001\u5217\u96c6\u5408\u304c\u5bfe\u8c61\u7a2e\u5225\u306b\u3088\u308a\u5909\u308f\u308b\u305f\u3081\u56fa\u5b9ashape\u5316\u3057\u306a\u3044\u3002\u65e2\u77e5property\u306f\u5951\u7d04\u3057\u3001\u8ffd\u52a0\u5217\u306f\u8a72\u5f53\u30b5\u30fc\u30d3\u30b9\u5883\u754c\u3067\u6271\u3046\u3002"
                        },
                        "minItems": 0
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "masterTypes",
                    "selectedMaster",
                    "rows"
                ]
            },
            "PUT/admin/master-dataResponse": {
                "title": "PUT /admin/master-data response",
                "description": "PUT /admin/master-data response \u306e response body schema\u3002\u30de\u30b9\u30bf\u7a2e\u5225\u9078\u629e\u5f8c\u3082\u540c\u4e00HTML\u753b\u9762\u3092\u518d\u63cf\u753b\u3067\u304d\u308b\u3088\u3046\u3001\u9078\u629e\u7d50\u679c\u3060\u3051\u3067\u306a\u304f\u30d5\u30a9\u30fc\u30e0\u6587\u8108\u30fb\u30de\u30b9\u30bf\u7a2e\u5225\u4e00\u89a7\u30fb\u9078\u629e\u4e2d\u30de\u30b9\u30bf\u30fb\u884c\u30c7\u30fc\u30bf\u3092\u8fd4\u3059\u3002",
                "type": "object",
                "properties": {
                    "message": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u30de\u30b9\u30bf\u30c7\u30fc\u30bf\u30e1\u30c3\u30bb\u30fc\u30b8",
                        "description": "/admin/master-data \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u51e6\u7406\u7d50\u679c\u30e1\u30c3\u30bb\u30fc\u30b8\u3002\u6ce8\u6587\u6642\u304a\u554f\u3044\u5408\u308f\u305b\u6b04\u3067\u306f\u306a\u304f\u3001\u753b\u9762\u9077\u79fb\u3084\u5b8c\u4e86\u8868\u793a\u306e\u305f\u3081\u306e\u901a\u77e5\u6587\u3002",
                        "example": "\u914d\u9001\u306f\u5e73\u65e5\u5e0c\u671b\u3067\u3059\u3002"
                    },
                    "form": {
                        "type": [
                            "object",
                            "array",
                            "null"
                        ],
                        "title": "\u5165\u529b\u30d5\u30a9\u30fc\u30e0",
                        "description": "Aura/WebForm\u7531\u6765\u306e\u30d5\u30a9\u30fc\u30e0\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3002\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5185\u90e8\u69cb\u9020\u306e\u305f\u3081schema\u3067\u306f\u5b58\u5728\u3068\u578b\u306e\u307f\u3092\u5951\u7d04\u3059\u308b\u3002",
                        "$comment": "Aura/WebForm\u7531\u6765\u306e\u4e0d\u900f\u660e\u30d5\u30a9\u30fc\u30e0\u8868\u73fe\u3002Resource\u5883\u754c\u3067\u306f\u30d5\u30a9\u30fc\u30e0\u306e\u5b58\u5728\u3068\u30b3\u30f3\u30c6\u30ad\u30b9\u30c8\u3060\u3051\u3092\u5951\u7d04\u3057\u3001\u5185\u90e8\u69cb\u9020\u306f\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5883\u754c\u306b\u59d4\u306d\u308b\u305f\u3081\u8ffd\u52a0\u30ad\u30fc\u5236\u7d04\u3092\u7f6e\u304b\u306a\u3044\u3002"
                    },
                    "csrfToken": {
                        "type": "string",
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002\u7ba1\u7406\u8005\u5411\u3051\u30de\u30b9\u30bf\u30c7\u30fc\u30bf\u7de8\u96c6\u30d5\u30a9\u30fc\u30e0\u306b\u4f7f\u7528\u3002",
                        "minLength": 1,
                        "maxLength": 160
                    },
                    "submitTo": {
                        "type": [
                            "object",
                            "null"
                        ],
                        "title": "\u9001\u4fe1\u5148",
                        "description": "/admin/master-data \u306e\u9078\u629e\u5f8c\u306b\u7de8\u96c6\u5185\u5bb9\u3092\u9001\u4fe1\u3059\u308b\u30d5\u30a9\u30fc\u30e0 action\u3002",
                        "additionalProperties": false,
                        "properties": {
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "PUT"
                                ]
                            },
                            "href": {
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048
                            }
                        },
                        "required": [
                            "rel",
                            "method",
                            "href"
                        ]
                    },
                    "masterTypes": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u30de\u30b9\u30bf\u7a2e\u5225\u4e00\u89a7",
                        "description": "/admin/master-data \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u30de\u30b9\u30bf\u7a2e\u5225\u4e00\u89a7\u3002\u914d\u5217\u8981\u7d20\u306fALPS\u610f\u5473\u3068Fake\u89b3\u5bdf\u306b\u57fa\u3065\u304d\u3001\u56fa\u5b9a\u3067\u304d\u306a\u3044\u52d5\u7684\u5217\u306f\u4f8b\u5916\u7406\u7531\u3092\u53f0\u5e33\u5316\u3059\u308b\u3002",
                        "items": {
                            "type": [
                                "object",
                                "null"
                            ],
                            "title": "\u30de\u30b9\u30bf\u7a2e\u5225",
                            "description": "/admin/master-data \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u30de\u30b9\u30bf\u7a2e\u5225\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `masterTypes` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002",
                            "properties": {
                                "table": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 255,
                                    "title": "\u30de\u30b9\u30bf\u30c6\u30fc\u30d6\u30eb",
                                    "description": "/admin/master-data \u306e\u753b\u9762\u8868\u793a\u306b\u4f7f\u3046\u30de\u30b9\u30bf\u30c6\u30fc\u30d6\u30eb\u3002\u696d\u52d9\u30a8\u30f3\u30c6\u30a3\u30c6\u30a3\u305d\u306e\u3082\u306e\u3067\u306f\u306a\u304f\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8/\u4e00\u89a7\u8868\u793a\u306e\u88dc\u52a9\u5024\u3002"
                                },
                                "label": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 255,
                                    "title": "\u8868\u793a\u30e9\u30d9\u30eb",
                                    "description": "/admin/master-data \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8868\u793a\u307e\u305f\u306f\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u63cf\u753b\u306b\u4f7f\u3046\u8868\u793a\u30e9\u30d9\u30eb\u3002\u540c\u540dproperty\u3067\u3082\u89aa\u6587\u8108 `root` \u306b\u3088\u3063\u3066\u610f\u5473\u3092\u5206\u3051\u308b\u3002"
                                },
                                "value": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 255,
                                    "title": "\u30de\u30b9\u30bf\u5024",
                                    "description": "/admin/master-data \u306e\u30de\u30b9\u30bf\u7a2e\u5225\u307e\u305f\u306f\u30de\u30b9\u30bf\u884c\u306b\u8868\u793a\u3055\u308c\u308b\u5024\u3002\u9078\u629e\u80a2\u306e\u8868\u793a/\u4fdd\u5b58\u5358\u4f4d\u3068\u3057\u3066\u6271\u3046\u3002"
                                }
                            },
                            "$comment": "\u914d\u5217\u8981\u7d20\u306f\u30de\u30b9\u30bf/CSV/option map\u306e\u52d5\u7684\u884c\u3067\u3042\u308a\u3001\u5217\u96c6\u5408\u304c\u5bfe\u8c61\u7a2e\u5225\u306b\u3088\u308a\u5909\u308f\u308b\u305f\u3081\u56fa\u5b9ashape\u5316\u3057\u306a\u3044\u3002\u65e2\u77e5property\u306f\u5951\u7d04\u3057\u3001\u8ffd\u52a0\u5217\u306f\u8a72\u5f53\u30b5\u30fc\u30d3\u30b9\u5883\u754c\u3067\u6271\u3046\u3002"
                        },
                        "minItems": 0
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "\u3053\u306e\u30ec\u30b9\u30dd\u30f3\u30b9/\u64cd\u4f5c\u304c\u5bfe\u5fdc\u3059\u308bALPS\u9077\u79fbID\u3002\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u306e\u72b6\u614b\u9077\u79fb\u8ffd\u8de1\u306b\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "selectedMaster": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 255,
                        "title": "\u9078\u629e\u4e2d\u30de\u30b9\u30bf",
                        "description": "/admin/master-data \u306e\u51e6\u7406\u6587\u8108\u304b\u3089\u6d3e\u751f\u3057\u305f\u9078\u629e\u4e2d\u30de\u30b9\u30bf\u3002ALPS\u57fa\u790e\u8a9e\u3060\u3051\u3067\u306f\u5358\u4f4d\u3084\u7528\u9014\u304c\u4e0d\u8db3\u3059\u308b\u305f\u3081\u3001\u3053\u306eResource\u4e0a\u306e\u610f\u5473\u3092\u660e\u793a\u3059\u308b\u3002"
                    },
                    "rows": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u884c\u30c7\u30fc\u30bf",
                        "description": "/admin/master-data \u306e\u30de\u30b9\u30bf/CSV\u884c\u30c7\u30fc\u30bf\u3002\u5217\u96c6\u5408\u306f\u5bfe\u8c61\u30de\u30b9\u30bf\u306b\u3088\u308a\u5909\u308f\u308b\u305f\u3081\u3001\u65e2\u77e5\u5217\u3092\u512a\u5148\u3057\u3066\u5951\u7d04\u3059\u308b\u3002",
                        "items": {
                            "type": [
                                "object",
                                "null"
                            ],
                            "title": "\u884c",
                            "description": "/admin/master-data \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u884c\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `rows` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002",
                            "properties": {
                                "name": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 255,
                                    "title": "\u51e6\u7406\u8868\u793a\u540d",
                                    "description": "\u30de\u30b9\u30bf\u884c\u306e\u8868\u793a\u540d\u3002\u652f\u6255\u65b9\u6cd5\u3001\u914d\u9001\u65b9\u6cd5\u3001\u30cb\u30e5\u30fc\u30b9\u3001\u898f\u683c\u306a\u3069\u8907\u6570\u306eSQL-backed master\u3092\u4ee3\u8868\u3059\u308b\u305f\u3081\u3001Fake\u89b3\u5bdf\u5024\u3060\u3051\u3067\u306a\u304fEC-CUBE\u5074\u306e\u8868\u793a\u540d\u4e0a\u9650\u306b\u5408\u308f\u305b\u308b\u3002",
                                    "example": "\u30c6\u30b9\u30c8\u7ba1\u7406\u8005"
                                },
                                "id": {
                                    "type": [
                                        "string",
                                        "integer",
                                        "null"
                                    ],
                                    "title": "ID",
                                    "description": "Fake\u89b3\u5bdf\u6587\u5b57\u9577 13\u301c32; \u89b3\u5bdf\u5024 'ad000000000000000000000000000001', 'ad000000000000000000000000000003', 'fedcba9876543210fedcba9876543210', '10000000aaaa1111bbbb2222cccc3333', 'ad000000000000000000000000000002', '0123456789abcdef0123456789abcdef', 'aaaaaaaa00000000bbbbbbbb11111111', '20000000dddd2222eeee3333ffff4444'\u3002",
                                    "example": "ad000000000000000000000000000001",
                                    "minLength": 0,
                                    "maxLength": 128,
                                    "$comment": "Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u305f\u3081\u3001\u3053\u306e\u5883\u754c\u3060\u3051mixedBoundaryId\u3068\u3057\u3066\u6271\u3046\u3002"
                                }
                            },
                            "$comment": "\u914d\u5217\u8981\u7d20\u306f\u30de\u30b9\u30bf/CSV/option map\u306e\u52d5\u7684\u884c\u3067\u3042\u308a\u3001\u5217\u96c6\u5408\u304c\u5bfe\u8c61\u7a2e\u5225\u306b\u3088\u308a\u5909\u308f\u308b\u305f\u3081\u56fa\u5b9ashape\u5316\u3057\u306a\u3044\u3002\u65e2\u77e5property\u306f\u5951\u7d04\u3057\u3001\u8ffd\u52a0\u5217\u306f\u8a72\u5f53\u30b5\u30fc\u30d3\u30b9\u5883\u754c\u3067\u6271\u3046\u3002"
                        },
                        "minItems": 0
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "form",
                    "masterTypes",
                    "transitionId",
                    "selectedMaster",
                    "rows"
                ]
            },
            "PUT/admin/master-data-editResponse": {
                "title": "PUT /admin/master-data-edit response",
                "description": "PUT /admin/master-data-edit response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "message": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u30de\u30b9\u30bf\u30c7\u30fc\u30bf\u30e1\u30c3\u30bb\u30fc\u30b8",
                        "description": "/admin/master-data-edit \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u51e6\u7406\u7d50\u679c\u30e1\u30c3\u30bb\u30fc\u30b8\u3002\u6ce8\u6587\u6642\u304a\u554f\u3044\u5408\u308f\u305b\u6b04\u3067\u306f\u306a\u304f\u3001\u753b\u9762\u9077\u79fb\u3084\u5b8c\u4e86\u8868\u793a\u306e\u305f\u3081\u306e\u901a\u77e5\u6587\u3002",
                        "example": "\u914d\u9001\u306f\u5e73\u65e5\u5e0c\u671b\u3067\u3059\u3002"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "\u3053\u306e\u30ec\u30b9\u30dd\u30f3\u30b9/\u64cd\u4f5c\u304c\u5bfe\u5fdc\u3059\u308bALPS\u9077\u79fbID\u3002\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u306e\u72b6\u614b\u9077\u79fb\u8ffd\u8de1\u306b\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "masterType": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 255,
                        "title": "\u30de\u30b9\u30bf\u7a2e\u5225",
                        "description": "/admin/master-data-edit \u306e\u51e6\u7406\u6587\u8108\u304b\u3089\u6d3e\u751f\u3057\u305f\u30de\u30b9\u30bf\u7a2e\u5225\u3002ALPS\u57fa\u790e\u8a9e\u3060\u3051\u3067\u306f\u5358\u4f4d\u3084\u7528\u9014\u304c\u4e0d\u8db3\u3059\u308b\u305f\u3081\u3001\u3053\u306eResource\u4e0a\u306e\u610f\u5473\u3092\u660e\u793a\u3059\u308b\u3002"
                    },
                    "count": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 2147483647,
                        "title": "\u4ef6\u6570",
                        "description": "/admin/master-data-edit \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8fd4\u3059\u4ef6\u6570\u3002\u4e00\u89a7\u30fb\u96c6\u8a08\u30fb\u51e6\u7406\u7d50\u679c\u306e\u898f\u6a21\u3092\u8868\u3059\u975e\u8ca0\u6574\u6570\u3002"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "transitionId",
                    "masterType",
                    "count"
                ]
            },
            "GET/admin/memberResponse": {
                "title": "GET /admin/member response",
                "description": "GET /admin/member response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "form": {
                        "type": [
                            "object",
                            "array",
                            "null"
                        ],
                        "title": "\u5165\u529b\u30d5\u30a9\u30fc\u30e0",
                        "description": "Aura/WebForm\u7531\u6765\u306e\u30d5\u30a9\u30fc\u30e0\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3002\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5185\u90e8\u69cb\u9020\u306e\u305f\u3081schema\u3067\u306f\u5b58\u5728\u3068\u578b\u306e\u307f\u3092\u5951\u7d04\u3059\u308b\u3002",
                        "$comment": "Aura/WebForm\u7531\u6765\u306e\u4e0d\u900f\u660e\u30d5\u30a9\u30fc\u30e0\u8868\u73fe\u3002Resource\u5883\u754c\u3067\u306f\u30d5\u30a9\u30fc\u30e0\u306e\u5b58\u5728\u3068\u30b3\u30f3\u30c6\u30ad\u30b9\u30c8\u3060\u3051\u3092\u5951\u7d04\u3057\u3001\u5185\u90e8\u69cb\u9020\u306f\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5883\u754c\u306b\u59d4\u306d\u308b\u305f\u3081\u8ffd\u52a0\u30ad\u30fc\u5236\u7d04\u3092\u7f6e\u304b\u306a\u3044\u3002"
                    },
                    "name": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u51e6\u7406\u8868\u793a\u540d",
                        "description": "Fake\u89b3\u5bdf\u6587\u5b57\u9577 1\u301c7; \u89b3\u5bdf\u5024 '\u30c6\u30b9\u30c8\u7ba1\u7406\u8005', '\u526f\u7ba1\u7406\u8005', '\u5e97\u8217\u30aa\u30fc\u30ca\u30fc', '\u524a\u9664\u6e08\u307f\u7ba1\u7406\u8005', 'Red', 'Blue', 'S', 'Color'\u3002",
                        "example": "\u30c6\u30b9\u30c8\u7ba1\u7406\u8005"
                    },
                    "loginId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u30ed\u30b0\u30a4\u30f3ID",
                        "description": "\u7ba1\u7406\u753b\u9762\u30ed\u30b0\u30a4\u30f3\u7528\u306eID\u3002\u4e00\u610f Fake\u89b3\u5bdf\u6587\u5b57\u9577 6\u301c13; \u89b3\u5bdf\u5024 'test-admin', 'shop-owner', 'deputy', 'deleted-admin', 'unknown-user'\u3002",
                        "example": "test-admin",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    },
                    "csrfToken": {
                        "title": "\u51e6\u7406\u8b58\u5225\u5b50",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u306e\u507d\u9020\u3092\u9632\u3050\u305f\u3081\u306b\u9001\u4fe1\u5143\u753b\u9762\u3067\u767a\u884c\u3055\u308c\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "sortNo": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 2147483647,
                        "title": "\u8868\u793a\u9806",
                        "description": "\u4e00\u89a7\u306b\u304a\u3051\u308b\u4e26\u3073\u9806 Fake\u89b3\u5bdf\u6570\u5024 1\u301c20; \u89b3\u5bdf\u5024 '1', '3', '2', '4', '10', '20'\u3002",
                        "example": 1
                    },
                    "authority": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 9,
                        "title": "\u6a29\u9650",
                        "description": "\u7ba1\u7406\u8005\u6a29\u9650\u30ec\u30d9\u30eb\u30020=\u30b7\u30b9\u30c6\u30e0\u7ba1\u7406\u8005\uff08\u6700\u9ad8\u6a29\u9650\u3001\u5168\u6a5f\u80fd\u30a2\u30af\u30bb\u30b9\u53ef\u80fd\uff09, 1=\u5e97\u8217\u30aa\u30fc\u30ca\u30fc\uff08\u5236\u9650\u3042\u308a\u3001denyUrl\u3067\u5236\u9650\u3055\u308c\u305fURL\u306b\u30a2\u30af\u30bb\u30b9\u4e0d\u53ef\uff09\u3002\u6570\u5024\u304c\u5c0f\u3055\u3044\u307b\u3069\u6a29\u9650\u304c\u9ad8\u3044\u3002AuthorityRole\u306eURL\u62d2\u5426\u30d1\u30bf\u30fc\u30f3\u3067\u30a2\u30af\u30bb\u30b9\u5236\u5fa1 Fake\u89b3\u5bdf\u6570\u5024 0\u301c1; \u89b3\u5bdf\u5024 '1', '0'\u3002",
                        "example": 1
                    },
                    "work": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "title": "\u7a3c\u50cd\u72b6\u614b",
                        "description": "Work Master\u306e\u5b9a\u6570\u3067\u5b9a\u7fa9: 0=NON_ACTIVE\uff08\u975e\u7a3c\u50cd\u3001\u30ed\u30b0\u30a4\u30f3\u4e0d\u53ef\uff09, 1=ACTIVE\uff08\u7a3c\u50cd\u3001\u30ed\u30b0\u30a4\u30f3\u53ef\u80fd\uff09\u3002\u7ba1\u7406\u8005\u30e1\u30f3\u30d0\u30fc\u306e\u6709\u52b9/\u7121\u52b9\u3092\u5236\u5fa1",
                        "minimum": 0
                    },
                    "adminId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u7ba1\u7406\u8005ID",
                        "description": "\u7ba1\u7406\u8005\u30e1\u30f3\u30d0\u30fc\u3092\u8b58\u5225\u3059\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002Fake \u3068 SQL \u306e ID \u5f62\u72b6\u5dee\u3092\u96a0\u3059\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 32\u301c32; \u89b3\u5bdf\u5024 'ad000000000000000000000000000001', 'ad000000000000000000000000000002', 'ad000000000000000000000000000003', 'ad000000000000000000000000000004'\u3002",
                        "example": "ad000000000000000000000000000001",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "name",
                    "loginId",
                    "sortNo",
                    "authority",
                    "work",
                    "adminId"
                ]
            },
            "POST/admin/memberResponse": {
                "title": "POST /admin/member response",
                "description": "POST /admin/member response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "name": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u51e6\u7406\u8868\u793a\u540d",
                        "description": "Fake\u89b3\u5bdf\u6587\u5b57\u9577 1\u301c7; \u89b3\u5bdf\u5024 '\u30c6\u30b9\u30c8\u7ba1\u7406\u8005', '\u526f\u7ba1\u7406\u8005', '\u5e97\u8217\u30aa\u30fc\u30ca\u30fc', '\u524a\u9664\u6e08\u307f\u7ba1\u7406\u8005', 'Red', 'Blue', 'S', 'Color'\u3002",
                        "example": "\u30c6\u30b9\u30c8\u7ba1\u7406\u8005"
                    },
                    "sortNo": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 2147483647,
                        "title": "\u8868\u793a\u9806",
                        "description": "\u4e00\u89a7\u306b\u304a\u3051\u308b\u4e26\u3073\u9806 Fake\u89b3\u5bdf\u6570\u5024 1\u301c20; \u89b3\u5bdf\u5024 '1', '3', '2', '4', '10', '20'\u3002",
                        "example": 1
                    },
                    "loginId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u30ed\u30b0\u30a4\u30f3ID",
                        "description": "\u7ba1\u7406\u753b\u9762\u30ed\u30b0\u30a4\u30f3\u7528\u306eID\u3002\u4e00\u610f Fake\u89b3\u5bdf\u6587\u5b57\u9577 6\u301c13; \u89b3\u5bdf\u5024 'test-admin', 'shop-owner', 'deputy', 'deleted-admin', 'unknown-user'\u3002",
                        "example": "test-admin",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    },
                    "authority": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 9,
                        "title": "\u6a29\u9650",
                        "description": "\u7ba1\u7406\u8005\u6a29\u9650\u30ec\u30d9\u30eb\u30020=\u30b7\u30b9\u30c6\u30e0\u7ba1\u7406\u8005\uff08\u6700\u9ad8\u6a29\u9650\u3001\u5168\u6a5f\u80fd\u30a2\u30af\u30bb\u30b9\u53ef\u80fd\uff09, 1=\u5e97\u8217\u30aa\u30fc\u30ca\u30fc\uff08\u5236\u9650\u3042\u308a\u3001denyUrl\u3067\u5236\u9650\u3055\u308c\u305fURL\u306b\u30a2\u30af\u30bb\u30b9\u4e0d\u53ef\uff09\u3002\u6570\u5024\u304c\u5c0f\u3055\u3044\u307b\u3069\u6a29\u9650\u304c\u9ad8\u3044\u3002AuthorityRole\u306eURL\u62d2\u5426\u30d1\u30bf\u30fc\u30f3\u3067\u30a2\u30af\u30bb\u30b9\u5236\u5fa1 Fake\u89b3\u5bdf\u6570\u5024 0\u301c1; \u89b3\u5bdf\u5024 '1', '0'\u3002",
                        "example": 1
                    },
                    "work": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "title": "\u7a3c\u50cd\u72b6\u614b",
                        "description": "Work Master\u306e\u5b9a\u6570\u3067\u5b9a\u7fa9: 0=NON_ACTIVE\uff08\u975e\u7a3c\u50cd\u3001\u30ed\u30b0\u30a4\u30f3\u4e0d\u53ef\uff09, 1=ACTIVE\uff08\u7a3c\u50cd\u3001\u30ed\u30b0\u30a4\u30f3\u53ef\u80fd\uff09\u3002\u7ba1\u7406\u8005\u30e1\u30f3\u30d0\u30fc\u306e\u6709\u52b9/\u7121\u52b9\u3092\u5236\u5fa1",
                        "minimum": 0
                    },
                    "adminId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u7ba1\u7406\u8005ID",
                        "description": "\u7ba1\u7406\u8005\u30e1\u30f3\u30d0\u30fc\u3092\u8b58\u5225\u3059\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002Fake \u3068 SQL \u306e ID \u5f62\u72b6\u5dee\u3092\u96a0\u3059\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 32\u301c32; \u89b3\u5bdf\u5024 'ad000000000000000000000000000001', 'ad000000000000000000000000000002', 'ad000000000000000000000000000003', 'ad000000000000000000000000000004'\u3002",
                        "example": "ad000000000000000000000000000001",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "name",
                    "sortNo",
                    "loginId",
                    "authority",
                    "work",
                    "adminId"
                ]
            },
            "PUT/admin/memberResponse": {
                "title": "PUT /admin/member response",
                "description": "PUT /admin/member response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "name": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u51e6\u7406\u8868\u793a\u540d",
                        "description": "Fake\u89b3\u5bdf\u6587\u5b57\u9577 1\u301c7; \u89b3\u5bdf\u5024 '\u30c6\u30b9\u30c8\u7ba1\u7406\u8005', '\u526f\u7ba1\u7406\u8005', '\u5e97\u8217\u30aa\u30fc\u30ca\u30fc', '\u524a\u9664\u6e08\u307f\u7ba1\u7406\u8005', 'Red', 'Blue', 'S', 'Color'\u3002",
                        "example": "\u30c6\u30b9\u30c8\u7ba1\u7406\u8005"
                    },
                    "sortNo": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 2147483647,
                        "title": "\u8868\u793a\u9806",
                        "description": "\u4e00\u89a7\u306b\u304a\u3051\u308b\u4e26\u3073\u9806 Fake\u89b3\u5bdf\u6570\u5024 1\u301c20; \u89b3\u5bdf\u5024 '1', '3', '2', '4', '10', '20'\u3002",
                        "example": 1
                    },
                    "loginId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u30ed\u30b0\u30a4\u30f3ID",
                        "description": "\u7ba1\u7406\u753b\u9762\u30ed\u30b0\u30a4\u30f3\u7528\u306eID\u3002\u4e00\u610f Fake\u89b3\u5bdf\u6587\u5b57\u9577 6\u301c13; \u89b3\u5bdf\u5024 'test-admin', 'shop-owner', 'deputy', 'deleted-admin', 'unknown-user'\u3002",
                        "example": "test-admin",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    },
                    "authority": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 9,
                        "title": "\u6a29\u9650",
                        "description": "\u7ba1\u7406\u8005\u6a29\u9650\u30ec\u30d9\u30eb\u30020=\u30b7\u30b9\u30c6\u30e0\u7ba1\u7406\u8005\uff08\u6700\u9ad8\u6a29\u9650\u3001\u5168\u6a5f\u80fd\u30a2\u30af\u30bb\u30b9\u53ef\u80fd\uff09, 1=\u5e97\u8217\u30aa\u30fc\u30ca\u30fc\uff08\u5236\u9650\u3042\u308a\u3001denyUrl\u3067\u5236\u9650\u3055\u308c\u305fURL\u306b\u30a2\u30af\u30bb\u30b9\u4e0d\u53ef\uff09\u3002\u6570\u5024\u304c\u5c0f\u3055\u3044\u307b\u3069\u6a29\u9650\u304c\u9ad8\u3044\u3002AuthorityRole\u306eURL\u62d2\u5426\u30d1\u30bf\u30fc\u30f3\u3067\u30a2\u30af\u30bb\u30b9\u5236\u5fa1 Fake\u89b3\u5bdf\u6570\u5024 0\u301c1; \u89b3\u5bdf\u5024 '1', '0'\u3002",
                        "example": 1
                    },
                    "work": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "title": "\u7a3c\u50cd\u72b6\u614b",
                        "description": "Work Master\u306e\u5b9a\u6570\u3067\u5b9a\u7fa9: 0=NON_ACTIVE\uff08\u975e\u7a3c\u50cd\u3001\u30ed\u30b0\u30a4\u30f3\u4e0d\u53ef\uff09, 1=ACTIVE\uff08\u7a3c\u50cd\u3001\u30ed\u30b0\u30a4\u30f3\u53ef\u80fd\uff09\u3002\u7ba1\u7406\u8005\u30e1\u30f3\u30d0\u30fc\u306e\u6709\u52b9/\u7121\u52b9\u3092\u5236\u5fa1",
                        "minimum": 0
                    },
                    "adminId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u7ba1\u7406\u8005ID",
                        "description": "\u7ba1\u7406\u8005\u30e1\u30f3\u30d0\u30fc\u3092\u8b58\u5225\u3059\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002Fake \u3068 SQL \u306e ID \u5f62\u72b6\u5dee\u3092\u96a0\u3059\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 32\u301c32; \u89b3\u5bdf\u5024 'ad000000000000000000000000000001', 'ad000000000000000000000000000002', 'ad000000000000000000000000000003', 'ad000000000000000000000000000004'\u3002",
                        "example": "ad000000000000000000000000000001",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "name",
                    "sortNo",
                    "loginId",
                    "authority",
                    "work",
                    "adminId"
                ]
            },
            "DELETE/admin/memberResponse": {
                "title": "DELETE /admin/member response",
                "description": "DELETE /admin/member response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "message": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u51e6\u7406\u30e1\u30c3\u30bb\u30fc\u30b8",
                        "description": "/admin/member \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u51e6\u7406\u7d50\u679c\u30e1\u30c3\u30bb\u30fc\u30b8\u3002\u6ce8\u6587\u6642\u304a\u554f\u3044\u5408\u308f\u305b\u6b04\u3067\u306f\u306a\u304f\u3001\u753b\u9762\u9077\u79fb\u3084\u5b8c\u4e86\u8868\u793a\u306e\u305f\u3081\u306e\u901a\u77e5\u6587\u3002",
                        "example": "\u914d\u9001\u306f\u5e73\u65e5\u5e0c\u671b\u3067\u3059\u3002"
                    },
                    "adminId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u7ba1\u7406\u8005ID",
                        "description": "\u7ba1\u7406\u8005\u30e1\u30f3\u30d0\u30fc\u3092\u8b58\u5225\u3059\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002Fake \u3068 SQL \u306e ID \u5f62\u72b6\u5dee\u3092\u96a0\u3059\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 32\u301c32; \u89b3\u5bdf\u5024 'ad000000000000000000000000000001', 'ad000000000000000000000000000002', 'ad000000000000000000000000000003', 'ad000000000000000000000000000004'\u3002",
                        "example": "ad000000000000000000000000000001",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    },
                    "loginId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u30ed\u30b0\u30a4\u30f3ID",
                        "description": "\u7ba1\u7406\u753b\u9762\u30ed\u30b0\u30a4\u30f3\u7528\u306eID\u3002\u4e00\u610f Fake\u89b3\u5bdf\u6587\u5b57\u9577 6\u301c13; \u89b3\u5bdf\u5024 'test-admin', 'shop-owner', 'deputy', 'deleted-admin', 'unknown-user'\u3002",
                        "example": "test-admin",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    },
                    "alreadyDeleted": {
                        "type": "boolean",
                        "title": "\u65e2\u524a\u9664\u30d5\u30e9\u30b0",
                        "description": "/admin/member \u306e\u51e6\u7406\u72b6\u614b\u3092\u793a\u3059\u65e2\u524a\u9664\u30d5\u30e9\u30b0\u3002\u753b\u9762\u8868\u793a\u3084\u51aa\u7b49\u51e6\u7406\u7d50\u679c\u306e\u5206\u5c90\u306b\u4f7f\u3046\u771f\u507d\u5024\u3002",
                        "example": false
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "adminId",
                    "loginId",
                    "alreadyDeleted"
                ]
            },
            "GET/admin/member-listResponse": {
                "title": "GET /admin/member-list response",
                "description": "GET /admin/member-list response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "filters": {
                        "type": [
                            "object",
                            "null"
                        ],
                        "title": "\u691c\u7d22\u6761\u4ef6",
                        "description": "/admin/member-list \u306e\u4e00\u89a7\u8868\u793a\u3092\u5236\u5fa1\u3059\u308b\u30da\u30fc\u30b8\u30f3\u30b0/\u691c\u7d22\u6761\u4ef6\u3002\u4ef6\u6570\u3001\u958b\u59cb\u4f4d\u7f6e\u3001\u4e26\u3073\u9806\u3001\u524d\u5f8c\u30ea\u30f3\u30af\u3092\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u304c\u518d\u73fe\u3059\u308b\u305f\u3081\u306e\u5024\u3002",
                        "properties": {
                            "nameKeyword": {
                                "type": [
                                    "string",
                                    "null"
                                ],
                                "minLength": 0,
                                "maxLength": 255,
                                "title": "\u540d\u524d\u691c\u7d22\u30ad\u30fc\u30ef\u30fc\u30c9",
                                "description": "/admin/member-list \u306e\u691c\u7d22\u6761\u4ef6\u3002\u5546\u54c1\u540d\u30fb\u4f1a\u54e1\u540d\u30fb\u7ba1\u7406\u8005\u540d\u306a\u3069\u3001\u3053\u306e\u4e00\u89a7\u753b\u9762\u3067\u540d\u524d\u3068\u3057\u3066\u6271\u3046\u8868\u793a\u540d\u3092\u90e8\u5206\u4e00\u81f4\u691c\u7d22\u3059\u308b\u3002",
                                "example": "\u9234\u6728"
                            },
                            "offset": {
                                "type": [
                                    "integer",
                                    "null"
                                ],
                                "minimum": 0,
                                "maximum": 2147483647,
                                "title": "\u958b\u59cb\u4f4d\u7f6e",
                                "description": "/admin/member-list \u306e\u4e00\u89a7\u8868\u793a\u3092\u5236\u5fa1\u3059\u308b\u30da\u30fc\u30b8\u30f3\u30b0/\u691c\u7d22\u6761\u4ef6\u3002\u4ef6\u6570\u3001\u958b\u59cb\u4f4d\u7f6e\u3001\u4e26\u3073\u9806\u3001\u524d\u5f8c\u30ea\u30f3\u30af\u3092\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u304c\u518d\u73fe\u3059\u308b\u305f\u3081\u306e\u5024\u3002"
                            },
                            "limit": {
                                "type": [
                                    "integer",
                                    "null"
                                ],
                                "minimum": 0,
                                "maximum": 2147483647,
                                "title": "\u8868\u793a\u4ef6\u6570",
                                "description": "/admin/member-list \u306e\u4e00\u89a7\u8868\u793a\u3092\u5236\u5fa1\u3059\u308b\u30da\u30fc\u30b8\u30f3\u30b0/\u691c\u7d22\u6761\u4ef6\u3002\u4ef6\u6570\u3001\u958b\u59cb\u4f4d\u7f6e\u3001\u4e26\u3073\u9806\u3001\u524d\u5f8c\u30ea\u30f3\u30af\u3092\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u304c\u518d\u73fe\u3059\u308b\u305f\u3081\u306e\u5024\u3002"
                            }
                        },
                        "additionalProperties": false,
                        "required": [
                            "nameKeyword",
                            "offset",
                            "limit"
                        ]
                    },
                    "count": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 2147483647,
                        "title": "\u4ef6\u6570",
                        "description": "/admin/member-list \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8fd4\u3059\u4ef6\u6570\u3002\u4e00\u89a7\u30fb\u96c6\u8a08\u30fb\u51e6\u7406\u7d50\u679c\u306e\u898f\u6a21\u3092\u8868\u3059\u975e\u8ca0\u6574\u6570\u3002"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u4e00\u89a7\u753b\u9762\u304b\u3089\u9001\u4fe1\u3059\u308b\u524a\u9664\u30d5\u30a9\u30fc\u30e0\u7528\u306eCSRF\u30c8\u30fc\u30af\u30f3\u3002",
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]*$"
                    },
                    "members": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u7ba1\u7406\u30e1\u30f3\u30d0\u30fc\u4e00\u89a7",
                        "description": "/admin/member-list \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u7ba1\u7406\u30e1\u30f3\u30d0\u30fc\u4e00\u89a7\u3002\u914d\u5217\u8981\u7d20\u306fALPS\u610f\u5473\u3068Fake\u89b3\u5bdf\u306b\u57fa\u3065\u304d\u3001\u56fa\u5b9a\u3067\u304d\u306a\u3044\u52d5\u7684\u5217\u306f\u4f8b\u5916\u7406\u7531\u3092\u53f0\u5e33\u5316\u3059\u308b\u3002",
                        "items": {
                            "type": [
                                "object",
                                "null"
                            ],
                            "title": "\u7ba1\u7406\u30e1\u30f3\u30d0\u30fc",
                            "description": "/admin/member-list \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u7ba1\u7406\u30e1\u30f3\u30d0\u30fc\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `members` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002",
                            "properties": {
                                "name": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 32,
                                    "title": "\u51e6\u7406\u8868\u793a\u540d",
                                    "description": "Fake\u89b3\u5bdf\u6587\u5b57\u9577 1\u301c7; \u89b3\u5bdf\u5024 '\u30c6\u30b9\u30c8\u7ba1\u7406\u8005', '\u526f\u7ba1\u7406\u8005', '\u5e97\u8217\u30aa\u30fc\u30ca\u30fc', '\u524a\u9664\u6e08\u307f\u7ba1\u7406\u8005', 'Red', 'Blue', 'S', 'Color'\u3002",
                                    "example": "\u30c6\u30b9\u30c8\u7ba1\u7406\u8005"
                                },
                                "sortNo": {
                                    "type": [
                                        "integer",
                                        "null"
                                    ],
                                    "minimum": 0,
                                    "maximum": 2147483647,
                                    "title": "\u8868\u793a\u9806",
                                    "description": "\u4e00\u89a7\u306b\u304a\u3051\u308b\u4e26\u3073\u9806 Fake\u89b3\u5bdf\u6570\u5024 1\u301c20; \u89b3\u5bdf\u5024 '1', '3', '2', '4', '10', '20'\u3002",
                                    "example": 1
                                },
                                "loginId": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "title": "\u30ed\u30b0\u30a4\u30f3ID",
                                    "description": "\u7ba1\u7406\u753b\u9762\u30ed\u30b0\u30a4\u30f3\u7528\u306eID\u3002\u4e00\u610f Fake\u89b3\u5bdf\u6587\u5b57\u9577 6\u301c13; \u89b3\u5bdf\u5024 'test-admin', 'shop-owner', 'deputy', 'deleted-admin', 'unknown-user'\u3002",
                                    "example": "test-admin",
                                    "minLength": 0,
                                    "maxLength": 128,
                                    "pattern": "^[A-Za-z0-9._:@/-]*$",
                                    "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                                },
                                "authority": {
                                    "type": [
                                        "integer",
                                        "null"
                                    ],
                                    "minimum": 0,
                                    "maximum": 9,
                                    "title": "\u6a29\u9650",
                                    "description": "\u7ba1\u7406\u8005\u6a29\u9650\u30ec\u30d9\u30eb\u30020=\u30b7\u30b9\u30c6\u30e0\u7ba1\u7406\u8005\uff08\u6700\u9ad8\u6a29\u9650\u3001\u5168\u6a5f\u80fd\u30a2\u30af\u30bb\u30b9\u53ef\u80fd\uff09, 1=\u5e97\u8217\u30aa\u30fc\u30ca\u30fc\uff08\u5236\u9650\u3042\u308a\u3001denyUrl\u3067\u5236\u9650\u3055\u308c\u305fURL\u306b\u30a2\u30af\u30bb\u30b9\u4e0d\u53ef\uff09\u3002\u6570\u5024\u304c\u5c0f\u3055\u3044\u307b\u3069\u6a29\u9650\u304c\u9ad8\u3044\u3002AuthorityRole\u306eURL\u62d2\u5426\u30d1\u30bf\u30fc\u30f3\u3067\u30a2\u30af\u30bb\u30b9\u5236\u5fa1 Fake\u89b3\u5bdf\u6570\u5024 0\u301c1; \u89b3\u5bdf\u5024 '1', '0'\u3002",
                                    "example": 1
                                },
                                "work": {
                                    "type": [
                                        "integer",
                                        "null"
                                    ],
                                    "title": "\u7a3c\u50cd\u72b6\u614b",
                                    "description": "Work Master\u306e\u5b9a\u6570\u3067\u5b9a\u7fa9: 0=NON_ACTIVE\uff08\u975e\u7a3c\u50cd\u3001\u30ed\u30b0\u30a4\u30f3\u4e0d\u53ef\uff09, 1=ACTIVE\uff08\u7a3c\u50cd\u3001\u30ed\u30b0\u30a4\u30f3\u53ef\u80fd\uff09\u3002\u7ba1\u7406\u8005\u30e1\u30f3\u30d0\u30fc\u306e\u6709\u52b9/\u7121\u52b9\u3092\u5236\u5fa1",
                                    "minimum": 0
                                },
                                "adminId": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "title": "\u7ba1\u7406\u8005ID",
                                    "description": "\u7ba1\u7406\u8005\u30e1\u30f3\u30d0\u30fc\u3092\u8b58\u5225\u3059\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002Fake \u3068 SQL \u306e ID \u5f62\u72b6\u5dee\u3092\u96a0\u3059\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 32\u301c32; \u89b3\u5bdf\u5024 'ad000000000000000000000000000001', 'ad000000000000000000000000000002', 'ad000000000000000000000000000003', 'ad000000000000000000000000000004'\u3002",
                                    "example": "ad000000000000000000000000000001",
                                    "minLength": 0,
                                    "maxLength": 128,
                                    "pattern": "^[A-Za-z0-9._:@/-]*$",
                                    "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                                }
                            },
                            "additionalProperties": false,
                            "$comment": "\u914d\u5217\u8981\u7d20\u306fFake/Resource\u3067\u89b3\u5bdf\u3055\u308c\u305f\u65e2\u77e5property\u306b\u56fa\u5b9a\u3059\u308b\u3002\u65b0\u3057\u3044\u5217\u304c\u5fc5\u8981\u306b\u306a\u3063\u305f\u5834\u5408\u306fSemantic-Ex\u89b3\u5bdf\u306b\u8ffd\u52a0\u3057\u3066schema\u3092\u66f4\u65b0\u3059\u308b\u3002"
                        },
                        "minItems": 0
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "filters",
                    "count",
                    "csrfToken",
                    "members"
                ]
            },
            "GET/admin/orderResponse": {
                "title": "GET /admin/order response",
                "description": "GET /admin/order response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "paymentDate": {
                        "title": "\u5165\u91d1\u65e5",
                        "description": "\u5165\u91d1\u78ba\u8a8d\u65e5\u6642\u3002\u5165\u91d1\u6e08\u307f\u30b9\u30c6\u30fc\u30bf\u30b9\u3078\u306e\u5909\u66f4\u6642\u306b\u8a18\u9332 Fake\u89b3\u5bdf\u6587\u5b57\u9577 19\u301c19; \u89b3\u5bdf\u5024 '2026-04-01 10:00:00'\u3002",
                        "type": "string",
                        "example": "2026-04-01 10:00:00",
                        "$comment": "\u672a\u5165\u91d1\u30fb\u672a\u767a\u9001\u30fb\u672a\u516c\u958b\u306a\u3069\u672a\u78ba\u5b9a\u65e5\u6642\u306fEC-CUBE\u5883\u754c\u3067\u7a7a\u6587\u5b57\u3068\u3057\u3066\u73fe\u308c\u308b\u305f\u3081\u3001\u65e5\u4ed8/\u65e5\u6642\u6587\u5b57\u5217\u306b\u52a0\u3048\u3066\u7a7a\u6587\u5b57\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "pattern": "^$|\\d{4}-\\d{2}-\\d{2}([ T]\\d{2}:\\d{2}:\\d{2}([+-]\\d{2}:?\\d{2}|Z)?)?$"
                    },
                    "paymentMethodId": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 2147483647,
                        "title": "\u652f\u6255\u65b9\u6cd5ID",
                        "description": "\u53d7\u6ce8\u306b\u7d10\u3065\u304f\u652f\u6255\u65b9\u6cd5\u30de\u30b9\u30bfID\u3002Fake/EC-CUBE\u5883\u754c\u3067\u306fDB\u63a1\u756a\u5024\u3068\u3057\u3066\u6271\u3046\u3002",
                        "example": 2
                    },
                    "orderNo": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 64,
                        "title": "\u6ce8\u6587\u756a\u53f7",
                        "description": "\u9867\u5ba2\u5411\u3051\u306e\u6ce8\u6587\u756a\u53f7\u3002\u30d5\u30a9\u30fc\u30de\u30c3\u30c8\u306f\u30ab\u30b9\u30bf\u30de\u30a4\u30ba\u53ef\u80fd Fake\u89b3\u5bdf\u6587\u5b57\u9577 32\u301c32; \u89b3\u5bdf\u5024 'past0000000000000000000000000001'\u3002",
                        "example": "past0000000000000000000000000001"
                    },
                    "orderStatus": {
                        "title": "\u53d7\u6ce8\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 Fake\u89b3\u5bdf\u6570\u5024 1\u301c1; \u89b3\u5bdf\u5024 '1'\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "orderDate": {
                        "title": "\u6ce8\u6587\u65e5",
                        "description": "\u6ce8\u6587\u78ba\u5b9a\u65e5\u6642 Fake\u89b3\u5bdf\u6587\u5b57\u9577 19\u301c19; \u89b3\u5bdf\u5024 '2026-04-01 10:00:00'\u3002",
                        "type": "string",
                        "example": "2026-04-01 10:00:00",
                        "pattern": "^\\d{4}-\\d{2}-\\d{2}([ T]\\d{2}:\\d{2}:\\d{2}([+-]\\d{2}:?\\d{2}|Z)?)?$"
                    },
                    "preOrderId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u4eee\u6ce8\u6587ID",
                        "description": "\u8cfc\u5165\u30d5\u30ed\u30fc\u306e\u4e00\u6642\u30bb\u30c3\u30b7\u30e7\u30f3\u30c8\u30fc\u30af\u30f3\uff08SHA1\u30cf\u30c3\u30b7\u30e5\uff09\u3002\u30ab\u30fc\u30c8\u3068\u53d7\u6ce8\u3092\u7d10\u3065\u3051\u308b\u3002\u4e88\u7d04\u6ce8\u6587\uff08pre-order\uff09ID\u3067\u306f\u306a\u3044\u3002\u30c1\u30a7\u30c3\u30af\u30a2\u30a6\u30c8\u958b\u59cb\u6642\u306b\u751f\u6210\u3001\u6ce8\u6587\u78ba\u5b9a\u307e\u305f\u306f\u30ab\u30fc\u30c8\u7834\u68c4\u3067\u6d88\u53bb Fake\u89b3\u5bdf\u6587\u5b57\u9577 40\u301c40; \u89b3\u5bdf\u5024 'deadbeefcafe1234567890abcdef01234567890a', 'deadbeefcafe1234567890abcdef01234567890b', 'aaaa00000000000000000000000000000000aaaa', 'past00000000000000000000000000000000past', 'deadbeefcafe1234567890abcdef01234567890c', 'bbbb00000000000000000000000000000000bbbb', 'cccc00000000000000000000000000000000cccc', 'aceface0000000000000000000000000000a11ce'\u3002",
                        "example": "deadbeefcafe1234567890abcdef01234567890a",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    },
                    "itemCount": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 10000,
                        "title": "\u660e\u7d30\u4ef6\u6570",
                        "description": "/admin/order \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8fd4\u3059\u660e\u7d30\u4ef6\u6570\u3002\u4e00\u89a7\u30fb\u96c6\u8a08\u30fb\u51e6\u7406\u7d50\u679c\u306e\u898f\u6a21\u3092\u8868\u3059\u975e\u8ca0\u6574\u6570\u3002",
                        "example": 1
                    },
                    "discount": {
                        "title": "\u5024\u5f15\u304d\u984d",
                        "description": "\u53d7\u6ce8\u5168\u4f53\u306e\u5024\u5f15\u304d\u5408\u8a08\u984d\u3002\u30af\u30fc\u30dd\u30f3\u7b49\u306b\u3088\u308b\u5024\u5f15\u304d Fake\u89b3\u5bdf\u6570\u5024 0\u301c0; \u89b3\u5bdf\u5024 '0'\u3002",
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 0
                    },
                    "addPoint": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "title": "\u4ed8\u4e0e\u30dd\u30a4\u30f3\u30c8",
                        "description": "\u6ce8\u6587\u306b\u3088\u308a\u4ed8\u4e0e\u3055\u308c\u308b\u30dd\u30a4\u30f3\u30c8\u6570\u3002\u5546\u54c1\u5358\u4fa1(\u7a0e\u629c) x pointRate x \u6570\u91cf\u3067\u660e\u7d30\u3054\u3068\u306b\u8a08\u7b97\u3057\u5408\u7b97\u3002\u5229\u7528\u30dd\u30a4\u30f3\u30c8\u5206\u3092\u63a7\u9664\u3002\u767a\u9001\u6e08\u307f(DELIVERED)\u9077\u79fb\u6642\u306b\u4f1a\u54e1\u306epoint\u306b\u52a0\u7b97 Fake\u89b3\u5bdf\u6570\u5024 0\u301c127; \u89b3\u5bdf\u5024 '127', '0'\u3002",
                        "example": 127,
                        "minimum": 0,
                        "maximum": 2147483647
                    },
                    "items": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u660e\u7d30\u4e00\u89a7",
                        "description": "/admin/order \u306e\u89aa\u30aa\u30d6\u30b8\u30a7\u30af\u30c8 `` \u306b\u542b\u307e\u308c\u308b\u660e\u7d30\u914d\u5217\u3002\u5546\u54c1\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u306e\u6587\u8108\u3067\u89e3\u91c8\u3059\u308b\u3002",
                        "items": {
                            "type": [
                                "object",
                                "null"
                            ],
                            "title": "\u660e\u7d30",
                            "description": "/admin/order \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u660e\u7d30\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `items` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002",
                            "properties": {
                                "productName": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 128,
                                    "title": "\u5546\u54c1\u540d",
                                    "description": "\u5546\u54c1\u306e\u8868\u793a\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 6\u301c17\u3002",
                                    "example": "\u30b5\u30f3\u30d7\u30eb\u5546\u54c1 A"
                                },
                                "productCode": {
                                    "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                                    "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 \u5546\u54c1\u3092\u8b58\u5225\u3059\u308bSKU\u3002Fake corpus\u3067\u306fASCII\u82f1\u6570\u30fb\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3067\u3001\u53d7\u6ce8\u660e\u7d30/\u30ab\u30fc\u30c8\u660e\u7d30\u306e\u7d50\u5408\u30ad\u30fc\u306b\u306a\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c26\u3002",
                                    "type": "string",
                                    "minLength": 0,
                                    "maxLength": 64,
                                    "example": "sample-001"
                                },
                                "quantity": {
                                    "title": "\u6570\u91cf",
                                    "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 Fake\u89b3\u5bdf\u6570\u5024 1\u301c3; \u89b3\u5bdf\u5024 '1', '2', '3'\u3002",
                                    "type": "integer",
                                    "minimum": 1,
                                    "maximum": 999,
                                    "example": 1
                                },
                                "unitPrice": {
                                    "title": "\u5358\u4fa1\uff08\u8868\u793a/\u8a08\u7b97\u7528\uff09",
                                    "description": "\u660e\u7d301\u4ef6\u3042\u305f\u308a\u306e\u5358\u4fa1\u3002\u53d7\u6ce8/\u30ab\u30fc\u30c8\u660e\u7d30\u30fb\u304a\u6c17\u306b\u5165\u308a\u30b9\u30ca\u30c3\u30d7\u30b7\u30e7\u30c3\u30c8\u3067\u306f\u8ffd\u52a0\u6642\u70b9\u306e price02 \u3092\u30b9\u30ca\u30c3\u30d7\u30b7\u30e7\u30c3\u30c8\u3057\u3066\u4fdd\u6301\u3059\u308b\uff08\u5f8c\u306e\u5024\u5f15\u304d\u3084\u30de\u30b9\u30bf\u6539\u5b9a\u306b\u5f71\u97ff\u3055\u308c\u306a\u3044\uff09\u3002BeMart \u5074\u3067\u306f `int` \u5186\u6574\u6570 Fake\u89b3\u5bdf\u6570\u5024 1200\u301c9800; \u89b3\u5bdf\u5024 '1200', '9800'\u3002",
                                    "type": "integer",
                                    "minimum": 0,
                                    "maximum": 999999999,
                                    "example": 1200
                                }
                            },
                            "additionalProperties": false,
                            "$comment": "\u914d\u5217\u8981\u7d20\u306fFake/Resource\u3067\u89b3\u5bdf\u3055\u308c\u305f\u65e2\u77e5property\u306b\u56fa\u5b9a\u3059\u308b\u3002\u65b0\u3057\u3044\u5217\u304c\u5fc5\u8981\u306b\u306a\u3063\u305f\u5834\u5408\u306fSemantic-Ex\u89b3\u5bdf\u306b\u8ffd\u52a0\u3057\u3066schema\u3092\u66f4\u65b0\u3059\u308b\u3002"
                        },
                        "minItems": 0
                    },
                    "customer": {
                        "type": [
                            "array",
                            "null",
                            "object"
                        ],
                        "title": "\u4f1a\u54e1\u8a73\u7d30",
                        "description": "/admin/order \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u4f1a\u54e1\u8a73\u7d30\u3002\u914d\u5217\u8981\u7d20\u306fALPS\u610f\u5473\u3068Fake\u89b3\u5bdf\u306b\u57fa\u3065\u304d\u3001\u56fa\u5b9a\u3067\u304d\u306a\u3044\u52d5\u7684\u5217\u306f\u4f8b\u5916\u7406\u7531\u3092\u53f0\u5e33\u5316\u3059\u308b\u3002",
                        "items": {
                            "type": "string",
                            "title": "\u4f1a\u54e1",
                            "minLength": 0,
                            "maxLength": 255,
                            "description": "/admin/order \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u4f1a\u54e1\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `customer` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002"
                        },
                        "minItems": 0,
                        "$comment": "\u5358\u4e00\u8a73\u7d30\u753b\u9762\u3067\u306f\u672a\u9078\u629e/\u521d\u671f\u8868\u793a\u306b\u7a7a\u914d\u5217\u3001\u53d6\u5f97\u6e08\u307f\u72b6\u614b\u306bobject\u304c\u73fe\u308c\u308b\u3002\u4e0d\u900f\u660e\u306a\u8a73\u7d30\u69cb\u9020\u306f\u65e2\u77e5property\u3092\u512a\u5148\u3057\u3001\u8ffd\u52a0\u30ad\u30fc\u306f\u4e92\u63db\u5883\u754c\u3068\u3057\u3066\u8a31\u5bb9\u3059\u308b\u3002"
                    },
                    "customerId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u4f1a\u54e1ID",
                        "description": "dtb_customer.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e Entity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\uff08\u30de\u30b9\u30a2\u30b5\u30a4\u30f3\u30e1\u30f3\u30c8\u9632\u6b62\u306e\u305f\u3081\u3001Session/AuthZ \u7d4c\u7531\u3067\u8aad\u307f\u51fa\u3057\u3001\u30ea\u30af\u30a8\u30b9\u30c8\u672c\u6587\u304b\u3089\u306f\u53d7\u3051\u53d6\u3089\u306a\u3044\uff09\u3002Favorite / Cart / Order \u306e\u6240\u6709\u8005\u30ad\u30fc\u3068\u3057\u3066\u6a2a\u65ad\u4f7f\u7528 Fake\u89b3\u5bdf\u6587\u5b57\u9577 12\u301c32; \u89b3\u5bdf\u5024 'customer-001', '0123456789abcdef0123456789abcdef', 'customer-002', 'favorite-list-customer', 'favorite-html-customer', 'fedcba9876543210fedcba9876543210', 'aaaaaaaa00000000bbbbbbbb11111111', '10000000aaaa1111bbbb2222cccc3333'\u3002",
                        "example": "customer-001",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    },
                    "deliveryFeeTotal": {
                        "title": "\u9001\u6599\u5408\u8a08",
                        "description": "\u5168\u914d\u9001\u5148\u306e\u9001\u6599\u5408\u8a08\uff08\u30b9\u30ca\u30c3\u30d7\u30b7\u30e7\u30c3\u30c8\uff09\u3002deliveryFeeAmount\uff08\u5730\u57df\u5225\u9001\u6599\uff09+ deliveryFee\uff08\u5546\u54c1\u5225\u9001\u6599\uff09\u00d7\u6570\u91cf \u306e\u5408\u8a08\u3002DeliveryFeePreprocessor\u3067\u8a08\u7b97\u3002\u30ab\u30fc\u30c8\u3068\u53d7\u6ce8\u306e\u4e21\u65b9\u3067\u4f7f\u7528 Fake\u89b3\u5bdf\u6570\u5024 0\u301c800; \u89b3\u5bdf\u5024 '600', '0', '500', '800', '700'\u3002",
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 600
                    },
                    "usePoint": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 2147483647,
                        "title": "\u4f7f\u7528\u30dd\u30a4\u30f3\u30c8",
                        "description": "\u6ce8\u6587\u3067\u4f7f\u7528\u3059\u308b\u30dd\u30a4\u30f3\u30c8\u6570\u3002\u5b9f\u969b\u306e\u5024\u5f15\u304d\u984d\u306f usePoint x pointConversionRate\uff08\u5207\u308a\u6368\u3066\uff09\u3067\u8a08\u7b97\u3055\u308c\u3001\u4e0d\u8ab2\u7a0e\u306e\u30dd\u30a4\u30f3\u30c8\u5024\u5f15\u304d\u660e\u7d30\u3068\u3057\u3066\u53d7\u6ce8\u306b\u8ffd\u52a0 Fake\u89b3\u5bdf\u6570\u5024 0\u301c0; \u89b3\u5bdf\u5024 '0'\u3002",
                        "example": 0
                    },
                    "charge": {
                        "title": "\u624b\u6570\u6599",
                        "description": "\u53d7\u6ce8\u306e\u6c7a\u6e08\u624b\u6570\u6599\u3002paymentCharge\uff08\u652f\u6255\u65b9\u6cd5\u30de\u30b9\u30bf\u306e\u624b\u6570\u6599\uff09\u306e\u30b9\u30ca\u30c3\u30d7\u30b7\u30e7\u30c3\u30c8\u3002PaymentChargePreprocessor\u306b\u3088\u308a\u53d7\u6ce8\u4f5c\u6210\u6642\u306b\u30b3\u30d4\u30fc\u3055\u308c\u308b Fake\u89b3\u5bdf\u6570\u5024 0\u301c300; \u89b3\u5bdf\u5024 '0', '300', '200'\u3002",
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 0
                    },
                    "paymentTotal": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "title": "\u652f\u6255\u5408\u8a08",
                        "description": "\u5b9f\u969b\u306e\u652f\u6255\u91d1\u984d\u3002\u521d\u671f\u5024\u306ftotal\u3068\u540c\u5024\u3067\u3001PointProcessor\u304c\u30dd\u30a4\u30f3\u30c8\u5024\u5f15\u304d\u306eOrderItem\uff08type=POINT_DISCOUNT\u3001\u4e0d\u8ab2\u7a0e\uff09\u3092\u8ffd\u52a0\u5f8c\u306bPurchaseFlow.calculateTotal()\u3067\u518d\u8a08\u7b97\u3055\u308c\u308b\u3002\u8a08\u7b97\u5f0f: total - (\u5229\u7528\u30dd\u30a4\u30f3\u30c8 x pointConversionRate) Fake\u89b3\u5bdf\u6570\u5024 12700\u301c12700; \u89b3\u5bdf\u5024 '12700'\u3002",
                        "example": 12700,
                        "minimum": 0,
                        "maximum": 999999999
                    },
                    "tax": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "title": "\u7a0e\u984d",
                        "description": "\u53d7\u6ce8\u5168\u4f53\u306e\u7a0e\u984d\u5408\u8a08\uff08\u975e\u63a8\u5968\uff09\u3002\u660e\u7d30\u3054\u3068\u306e\u7a0e\u984d\u96c6\u8a08\u3068\u5dee\u7570\u304c\u751f\u3058\u308b\u5834\u5408\u304c\u3042\u308b\u305f\u3081\u3001\u6b63\u78ba\u306a\u7a0e\u984d\u306fOrderItem\u660e\u7d30\u3054\u3068\u306etax\u3092\u96c6\u8a08\u3059\u3079\u304d Fake\u89b3\u5bdf\u6570\u5024 1100\u301c1100; \u89b3\u5bdf\u5024 '1100'\u3002",
                        "example": 1100,
                        "minimum": 0,
                        "maximum": 999999999
                    },
                    "orderStatusOptions": {
                        "type": "object",
                        "title": "\u53d7\u6ce8\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916",
                        "$comment": "\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u7531\u6765\u307e\u305f\u306f\u52d5\u7684map\u306e\u305f\u3081\u3001JSON\u5883\u754c\u3067\u306fobject\u3067\u3042\u308b\u3053\u3068\u3068\u610f\u5473\u3092\u5951\u7d04\u3057\u3001\u5185\u90e8\u30ad\u30fc\u306f\u5225\u5883\u754c\u3067\u6271\u3046\u3002\u8ffd\u52a0\u30ad\u30fc\u306f\u4e0d\u900f\u660e\u69cb\u9020\u3068\u3057\u3066\u8a31\u5bb9\u3059\u308b\u3002"
                    },
                    "subtotal": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "title": "\u5546\u54c1\u5c0f\u8a08",
                        "description": "\u5546\u54c1\u5408\u8a08\u91d1\u984d\uff08\u7a0e\u8fbc\uff09\u3002\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u5024\u5f15\u304d\u9069\u7528\u524d\u306e\u5546\u54c1\u660e\u7d30\uff08orderItemType=1\uff09\u306e\u307f\u306e\u5408\u8a08\u3002PurchaseFlow.calculateSubTotal()\u3067\u8a08\u7b97\u3002\u9001\u6599\u7121\u6599\u6761\u4ef6\u306e\u5224\u5b9a\u57fa\u6e96\u306b\u3082\u4f7f\u7528\uff08\u304a\u5c4a\u3051\u5148\u3054\u3068\u306b\u5224\u5b9a\uff09 Fake\u89b3\u5bdf\u6570\u5024 11000\u301c11000; \u89b3\u5bdf\u5024 '11000'\u3002",
                        "example": 11000,
                        "minimum": 0,
                        "maximum": 999999999
                    },
                    "csrfToken": {
                        "title": "\u51e6\u7406\u8b58\u5225\u5b50",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u306e\u507d\u9020\u3092\u9632\u3050\u305f\u3081\u306b\u9001\u4fe1\u5143\u753b\u9762\u3067\u767a\u884c\u3055\u308c\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "total": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "title": "\u53d7\u6ce8\u5408\u8a08",
                        "description": "\u53d7\u6ce8\u5408\u8a08\u91d1\u984d\u3002\u8a08\u7b97\u5f0f: subtotal(\u5546\u54c1\u7a0e\u8fbc\u5408\u8a08) + deliveryFeeTotal(\u9001\u6599) + charge(\u624b\u6570\u6599) - discount(\u5024\u5f15\u304d)\u3002\u30ab\u30fc\u30c8\u306etotalPrice\u3068\u306f\u5225\u30d7\u30ed\u30d1\u30c6\u30a3 Fake\u89b3\u5bdf\u6570\u5024 12700\u301c12700; \u89b3\u5bdf\u5024 '12700'\u3002",
                        "example": 12700,
                        "minimum": 0,
                        "maximum": 999999999
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "paymentDate",
                    "paymentMethodId",
                    "orderNo",
                    "orderStatus",
                    "orderDate",
                    "preOrderId",
                    "itemCount",
                    "discount",
                    "addPoint",
                    "items",
                    "customer",
                    "customerId",
                    "deliveryFeeTotal",
                    "usePoint",
                    "charge",
                    "paymentTotal",
                    "tax",
                    "orderStatusOptions",
                    "subtotal",
                    "total"
                ]
            },
            "PUT/admin/orderResponse": {
                "title": "PUT /admin/order response",
                "description": "PUT /admin/order response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "orderNo": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 64,
                        "title": "\u6ce8\u6587\u756a\u53f7",
                        "description": "\u9867\u5ba2\u5411\u3051\u306e\u6ce8\u6587\u756a\u53f7\u3002\u30d5\u30a9\u30fc\u30de\u30c3\u30c8\u306f\u30ab\u30b9\u30bf\u30de\u30a4\u30ba\u53ef\u80fd Fake\u89b3\u5bdf\u6587\u5b57\u9577 32\u301c32; \u89b3\u5bdf\u5024 'past0000000000000000000000000001'\u3002",
                        "example": "past0000000000000000000000000001"
                    },
                    "customerId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u4f1a\u54e1ID",
                        "description": "dtb_customer.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e Entity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\uff08\u30de\u30b9\u30a2\u30b5\u30a4\u30f3\u30e1\u30f3\u30c8\u9632\u6b62\u306e\u305f\u3081\u3001Session/AuthZ \u7d4c\u7531\u3067\u8aad\u307f\u51fa\u3057\u3001\u30ea\u30af\u30a8\u30b9\u30c8\u672c\u6587\u304b\u3089\u306f\u53d7\u3051\u53d6\u3089\u306a\u3044\uff09\u3002Favorite / Cart / Order \u306e\u6240\u6709\u8005\u30ad\u30fc\u3068\u3057\u3066\u6a2a\u65ad\u4f7f\u7528 Fake\u89b3\u5bdf\u6587\u5b57\u9577 12\u301c32; \u89b3\u5bdf\u5024 'customer-001', '0123456789abcdef0123456789abcdef', 'customer-002', 'favorite-list-customer', 'favorite-html-customer', 'fedcba9876543210fedcba9876543210', 'aaaaaaaa00000000bbbbbbbb11111111', '10000000aaaa1111bbbb2222cccc3333'\u3002",
                        "example": "customer-001",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    },
                    "orderStatus": {
                        "title": "\u53d7\u6ce8\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 Fake\u89b3\u5bdf\u6570\u5024 1\u301c1; \u89b3\u5bdf\u5024 '1'\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "deliveryFeeTotal": {
                        "title": "\u9001\u6599\u5408\u8a08",
                        "description": "\u5168\u914d\u9001\u5148\u306e\u9001\u6599\u5408\u8a08\uff08\u30b9\u30ca\u30c3\u30d7\u30b7\u30e7\u30c3\u30c8\uff09\u3002deliveryFeeAmount\uff08\u5730\u57df\u5225\u9001\u6599\uff09+ deliveryFee\uff08\u5546\u54c1\u5225\u9001\u6599\uff09\u00d7\u6570\u91cf \u306e\u5408\u8a08\u3002DeliveryFeePreprocessor\u3067\u8a08\u7b97\u3002\u30ab\u30fc\u30c8\u3068\u53d7\u6ce8\u306e\u4e21\u65b9\u3067\u4f7f\u7528 Fake\u89b3\u5bdf\u6570\u5024 0\u301c800; \u89b3\u5bdf\u5024 '600', '0', '500', '800', '700'\u3002",
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 600
                    },
                    "usePoint": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 2147483647,
                        "title": "\u4f7f\u7528\u30dd\u30a4\u30f3\u30c8",
                        "description": "\u6ce8\u6587\u3067\u4f7f\u7528\u3059\u308b\u30dd\u30a4\u30f3\u30c8\u6570\u3002\u5b9f\u969b\u306e\u5024\u5f15\u304d\u984d\u306f usePoint x pointConversionRate\uff08\u5207\u308a\u6368\u3066\uff09\u3067\u8a08\u7b97\u3055\u308c\u3001\u4e0d\u8ab2\u7a0e\u306e\u30dd\u30a4\u30f3\u30c8\u5024\u5f15\u304d\u660e\u7d30\u3068\u3057\u3066\u53d7\u6ce8\u306b\u8ffd\u52a0 Fake\u89b3\u5bdf\u6570\u5024 0\u301c0; \u89b3\u5bdf\u5024 '0'\u3002",
                        "example": 0
                    },
                    "charge": {
                        "title": "\u624b\u6570\u6599",
                        "description": "\u53d7\u6ce8\u306e\u6c7a\u6e08\u624b\u6570\u6599\u3002paymentCharge\uff08\u652f\u6255\u65b9\u6cd5\u30de\u30b9\u30bf\u306e\u624b\u6570\u6599\uff09\u306e\u30b9\u30ca\u30c3\u30d7\u30b7\u30e7\u30c3\u30c8\u3002PaymentChargePreprocessor\u306b\u3088\u308a\u53d7\u6ce8\u4f5c\u6210\u6642\u306b\u30b3\u30d4\u30fc\u3055\u308c\u308b Fake\u89b3\u5bdf\u6570\u5024 0\u301c300; \u89b3\u5bdf\u5024 '0', '300', '200'\u3002",
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 0
                    },
                    "paymentTotal": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "title": "\u652f\u6255\u5408\u8a08",
                        "description": "\u5b9f\u969b\u306e\u652f\u6255\u91d1\u984d\u3002\u521d\u671f\u5024\u306ftotal\u3068\u540c\u5024\u3067\u3001PointProcessor\u304c\u30dd\u30a4\u30f3\u30c8\u5024\u5f15\u304d\u306eOrderItem\uff08type=POINT_DISCOUNT\u3001\u4e0d\u8ab2\u7a0e\uff09\u3092\u8ffd\u52a0\u5f8c\u306bPurchaseFlow.calculateTotal()\u3067\u518d\u8a08\u7b97\u3055\u308c\u308b\u3002\u8a08\u7b97\u5f0f: total - (\u5229\u7528\u30dd\u30a4\u30f3\u30c8 x pointConversionRate) Fake\u89b3\u5bdf\u6570\u5024 12700\u301c12700; \u89b3\u5bdf\u5024 '12700'\u3002",
                        "example": 12700,
                        "minimum": 0,
                        "maximum": 999999999
                    },
                    "tax": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "title": "\u7a0e\u984d",
                        "description": "\u53d7\u6ce8\u5168\u4f53\u306e\u7a0e\u984d\u5408\u8a08\uff08\u975e\u63a8\u5968\uff09\u3002\u660e\u7d30\u3054\u3068\u306e\u7a0e\u984d\u96c6\u8a08\u3068\u5dee\u7570\u304c\u751f\u3058\u308b\u5834\u5408\u304c\u3042\u308b\u305f\u3081\u3001\u6b63\u78ba\u306a\u7a0e\u984d\u306fOrderItem\u660e\u7d30\u3054\u3068\u306etax\u3092\u96c6\u8a08\u3059\u3079\u304d Fake\u89b3\u5bdf\u6570\u5024 1100\u301c1100; \u89b3\u5bdf\u5024 '1100'\u3002",
                        "example": 1100,
                        "minimum": 0,
                        "maximum": 999999999
                    },
                    "subtotal": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "title": "\u5546\u54c1\u5c0f\u8a08",
                        "description": "\u5546\u54c1\u5408\u8a08\u91d1\u984d\uff08\u7a0e\u8fbc\uff09\u3002\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u5024\u5f15\u304d\u9069\u7528\u524d\u306e\u5546\u54c1\u660e\u7d30\uff08orderItemType=1\uff09\u306e\u307f\u306e\u5408\u8a08\u3002PurchaseFlow.calculateSubTotal()\u3067\u8a08\u7b97\u3002\u9001\u6599\u7121\u6599\u6761\u4ef6\u306e\u5224\u5b9a\u57fa\u6e96\u306b\u3082\u4f7f\u7528\uff08\u304a\u5c4a\u3051\u5148\u3054\u3068\u306b\u5224\u5b9a\uff09 Fake\u89b3\u5bdf\u6570\u5024 11000\u301c11000; \u89b3\u5bdf\u5024 '11000'\u3002",
                        "example": 11000,
                        "minimum": 0,
                        "maximum": 999999999
                    },
                    "discount": {
                        "title": "\u5024\u5f15\u304d\u984d",
                        "description": "\u53d7\u6ce8\u5168\u4f53\u306e\u5024\u5f15\u304d\u5408\u8a08\u984d\u3002\u30af\u30fc\u30dd\u30f3\u7b49\u306b\u3088\u308b\u5024\u5f15\u304d Fake\u89b3\u5bdf\u6570\u5024 0\u301c0; \u89b3\u5bdf\u5024 '0'\u3002",
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 0
                    },
                    "total": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "title": "\u53d7\u6ce8\u5408\u8a08",
                        "description": "\u53d7\u6ce8\u5408\u8a08\u91d1\u984d\u3002\u8a08\u7b97\u5f0f: subtotal(\u5546\u54c1\u7a0e\u8fbc\u5408\u8a08) + deliveryFeeTotal(\u9001\u6599) + charge(\u624b\u6570\u6599) - discount(\u5024\u5f15\u304d)\u3002\u30ab\u30fc\u30c8\u306etotalPrice\u3068\u306f\u5225\u30d7\u30ed\u30d1\u30c6\u30a3 Fake\u89b3\u5bdf\u6570\u5024 12700\u301c12700; \u89b3\u5bdf\u5024 '12700'\u3002",
                        "example": 12700,
                        "minimum": 0,
                        "maximum": 999999999
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "orderNo",
                    "customerId",
                    "orderStatus",
                    "deliveryFeeTotal",
                    "usePoint",
                    "charge",
                    "paymentTotal",
                    "tax",
                    "subtotal",
                    "discount",
                    "total"
                ]
            },
            "GET/admin/order-listResponse": {
                "title": "GET /admin/order-list response",
                "description": "GET /admin/order-list response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "offset": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 2147483647,
                        "title": "\u958b\u59cb\u4f4d\u7f6e",
                        "description": "/admin/order-list \u306e\u4e00\u89a7\u8868\u793a\u3092\u5236\u5fa1\u3059\u308b\u30da\u30fc\u30b8\u30f3\u30b0/\u691c\u7d22\u6761\u4ef6\u3002\u4ef6\u6570\u3001\u958b\u59cb\u4f4d\u7f6e\u3001\u4e26\u3073\u9806\u3001\u524d\u5f8c\u30ea\u30f3\u30af\u3092\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u304c\u518d\u73fe\u3059\u308b\u305f\u3081\u306e\u5024\u3002"
                    },
                    "limit": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 2147483647,
                        "title": "\u8868\u793a\u4ef6\u6570",
                        "description": "/admin/order-list \u306e\u4e00\u89a7\u8868\u793a\u3092\u5236\u5fa1\u3059\u308b\u30da\u30fc\u30b8\u30f3\u30b0/\u691c\u7d22\u6761\u4ef6\u3002\u4ef6\u6570\u3001\u958b\u59cb\u4f4d\u7f6e\u3001\u4e26\u3073\u9806\u3001\u524d\u5f8c\u30ea\u30f3\u30af\u3092\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u304c\u518d\u73fe\u3059\u308b\u305f\u3081\u306e\u5024\u3002"
                    },
                    "orders": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u6ce8\u6587\u4e00\u89a7",
                        "description": "/admin/order-list \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u6ce8\u6587\u4e00\u89a7\u3002\u914d\u5217\u8981\u7d20\u306fALPS\u610f\u5473\u3068Fake\u89b3\u5bdf\u306b\u57fa\u3065\u304d\u3001\u56fa\u5b9a\u3067\u304d\u306a\u3044\u52d5\u7684\u5217\u306f\u4f8b\u5916\u7406\u7531\u3092\u53f0\u5e33\u5316\u3059\u308b\u3002",
                        "items": {
                            "type": [
                                "object",
                                "null"
                            ],
                            "title": "\u6ce8\u6587\u6982\u8981",
                            "description": "/admin/order-list \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u6ce8\u6587\u6982\u8981\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `orders` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002",
                            "properties": {
                                "orderDate": {
                                    "title": "\u6ce8\u6587\u65e5",
                                    "description": "\u6ce8\u6587\u78ba\u5b9a\u65e5\u6642 Fake\u89b3\u5bdf\u6587\u5b57\u9577 19\u301c19; \u89b3\u5bdf\u5024 '2026-04-01 10:00:00'\u3002",
                                    "type": "string",
                                    "example": "2026-04-01 10:00:00",
                                    "pattern": "^\\d{4}-\\d{2}-\\d{2}([ T]\\d{2}:\\d{2}:\\d{2}([+-]\\d{2}:?\\d{2}|Z)?)?$"
                                },
                                "paymentTotal": {
                                    "type": [
                                        "integer",
                                        "null"
                                    ],
                                    "title": "\u652f\u6255\u5408\u8a08",
                                    "description": "\u5b9f\u969b\u306e\u652f\u6255\u91d1\u984d\u3002\u521d\u671f\u5024\u306ftotal\u3068\u540c\u5024\u3067\u3001PointProcessor\u304c\u30dd\u30a4\u30f3\u30c8\u5024\u5f15\u304d\u306eOrderItem\uff08type=POINT_DISCOUNT\u3001\u4e0d\u8ab2\u7a0e\uff09\u3092\u8ffd\u52a0\u5f8c\u306bPurchaseFlow.calculateTotal()\u3067\u518d\u8a08\u7b97\u3055\u308c\u308b\u3002\u8a08\u7b97\u5f0f: total - (\u5229\u7528\u30dd\u30a4\u30f3\u30c8 x pointConversionRate) Fake\u89b3\u5bdf\u6570\u5024 12700\u301c12700; \u89b3\u5bdf\u5024 '12700'\u3002",
                                    "example": 12700,
                                    "minimum": 0,
                                    "maximum": 999999999
                                },
                                "orderNo": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 64,
                                    "title": "\u6ce8\u6587\u756a\u53f7",
                                    "description": "\u9867\u5ba2\u5411\u3051\u306e\u6ce8\u6587\u756a\u53f7\u3002\u30d5\u30a9\u30fc\u30de\u30c3\u30c8\u306f\u30ab\u30b9\u30bf\u30de\u30a4\u30ba\u53ef\u80fd Fake\u89b3\u5bdf\u6587\u5b57\u9577 32\u301c32; \u89b3\u5bdf\u5024 'past0000000000000000000000000001'\u3002",
                                    "example": "past0000000000000000000000000001"
                                },
                                "customerId": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "title": "\u4f1a\u54e1ID",
                                    "description": "dtb_customer.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e Entity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\uff08\u30de\u30b9\u30a2\u30b5\u30a4\u30f3\u30e1\u30f3\u30c8\u9632\u6b62\u306e\u305f\u3081\u3001Session/AuthZ \u7d4c\u7531\u3067\u8aad\u307f\u51fa\u3057\u3001\u30ea\u30af\u30a8\u30b9\u30c8\u672c\u6587\u304b\u3089\u306f\u53d7\u3051\u53d6\u3089\u306a\u3044\uff09\u3002Favorite / Cart / Order \u306e\u6240\u6709\u8005\u30ad\u30fc\u3068\u3057\u3066\u6a2a\u65ad\u4f7f\u7528 Fake\u89b3\u5bdf\u6587\u5b57\u9577 12\u301c32; \u89b3\u5bdf\u5024 'customer-001', '0123456789abcdef0123456789abcdef', 'customer-002', 'favorite-list-customer', 'favorite-html-customer', 'fedcba9876543210fedcba9876543210', 'aaaaaaaa00000000bbbbbbbb11111111', '10000000aaaa1111bbbb2222cccc3333'\u3002",
                                    "example": "customer-001",
                                    "minLength": 0,
                                    "maxLength": 128,
                                    "pattern": "^[A-Za-z0-9._:@/-]*$",
                                    "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                                },
                                "total": {
                                    "type": [
                                        "integer",
                                        "null"
                                    ],
                                    "title": "\u53d7\u6ce8\u5408\u8a08",
                                    "description": "\u53d7\u6ce8\u5408\u8a08\u91d1\u984d\u3002\u8a08\u7b97\u5f0f: subtotal(\u5546\u54c1\u7a0e\u8fbc\u5408\u8a08) + deliveryFeeTotal(\u9001\u6599) + charge(\u624b\u6570\u6599) - discount(\u5024\u5f15\u304d)\u3002\u30ab\u30fc\u30c8\u306etotalPrice\u3068\u306f\u5225\u30d7\u30ed\u30d1\u30c6\u30a3 Fake\u89b3\u5bdf\u6570\u5024 12700\u301c12700; \u89b3\u5bdf\u5024 '12700'\u3002",
                                    "example": 12700,
                                    "minimum": 0,
                                    "maximum": 999999999
                                },
                                "orderStatus": {
                                    "title": "\u53d7\u6ce8\u30b9\u30c6\u30fc\u30bf\u30b9",
                                    "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 Fake\u89b3\u5bdf\u6570\u5024 1\u301c1; \u89b3\u5bdf\u5024 '1'\u3002",
                                    "type": "integer",
                                    "minimum": 1,
                                    "maximum": 9,
                                    "example": 1
                                }
                            },
                            "additionalProperties": false,
                            "$comment": "\u914d\u5217\u8981\u7d20\u306fFake/Resource\u3067\u89b3\u5bdf\u3055\u308c\u305f\u65e2\u77e5property\u306b\u56fa\u5b9a\u3059\u308b\u3002\u65b0\u3057\u3044\u5217\u304c\u5fc5\u8981\u306b\u306a\u3063\u305f\u5834\u5408\u306fSemantic-Ex\u89b3\u5bdf\u306b\u8ffd\u52a0\u3057\u3066schema\u3092\u66f4\u65b0\u3059\u308b\u3002"
                        },
                        "minItems": 0
                    },
                    "count": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 2147483647,
                        "title": "\u4ef6\u6570",
                        "description": "/admin/order-list \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8fd4\u3059\u4ef6\u6570\u3002\u4e00\u89a7\u30fb\u96c6\u8a08\u30fb\u51e6\u7406\u7d50\u679c\u306e\u898f\u6a21\u3092\u8868\u3059\u975e\u8ca0\u6574\u6570\u3002"
                    },
                    "searchForm": {
                        "type": [
                            "object",
                            "array",
                            "null"
                        ],
                        "title": "\u691c\u7d22\u30d5\u30a9\u30fc\u30e0",
                        "description": "/admin/order-list \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u4fdd\u6301\u3059\u308b\u30d5\u30a9\u30fc\u30e0\u6587\u8108\u3002Aura/WebForm\u7531\u6765\u306e\u5185\u90e8\u69cb\u9020\u306f\u5225\u5883\u754c\u306e\u8cac\u52d9\u3067\u3001\u3053\u3053\u3067\u306fResource\u4e0a\u306e\u5f79\u5272\u3092\u793a\u3059\u3002",
                        "$comment": "Aura/WebForm\u7531\u6765\u306e\u4e0d\u900f\u660e\u30d5\u30a9\u30fc\u30e0\u8868\u73fe\u3002Resource\u5883\u754c\u3067\u306f\u30d5\u30a9\u30fc\u30e0\u306e\u5b58\u5728\u3068\u30b3\u30f3\u30c6\u30ad\u30b9\u30c8\u3060\u3051\u3092\u5951\u7d04\u3057\u3001\u5185\u90e8\u69cb\u9020\u306f\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5883\u754c\u306b\u59d4\u306d\u308b\u305f\u3081\u8ffd\u52a0\u30ad\u30fc\u5236\u7d04\u3092\u7f6e\u304b\u306a\u3044\u3002"
                    },
                    "csrfToken": {
                        "type": "string",
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u4e00\u62ec\u524a\u9664\u30d5\u30a9\u30fc\u30e0\u306e\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002\u7ba1\u7406\u8005\u5411\u3051\u53d7\u6ce8\u4e00\u89a7\u306e\u4e00\u62ec\u64cd\u4f5c\u30d5\u30a9\u30fc\u30e0\u306b\u4f7f\u7528\u3002",
                        "minLength": 1,
                        "maxLength": 160
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "offset",
                    "limit",
                    "orders",
                    "count"
                ]
            },
            "GET/admin/order-statusResponse": {
                "title": "GET /admin/order-status response",
                "description": "GET /admin/order-status response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "form": {
                        "type": [
                            "object",
                            "array",
                            "null"
                        ],
                        "title": "\u5165\u529b\u30d5\u30a9\u30fc\u30e0",
                        "description": "Aura/WebForm\u7531\u6765\u306e\u30d5\u30a9\u30fc\u30e0\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3002\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5185\u90e8\u69cb\u9020\u306e\u305f\u3081schema\u3067\u306f\u5b58\u5728\u3068\u578b\u306e\u307f\u3092\u5951\u7d04\u3059\u308b\u3002",
                        "$comment": "Aura/WebForm\u7531\u6765\u306e\u4e0d\u900f\u660e\u30d5\u30a9\u30fc\u30e0\u8868\u73fe\u3002Resource\u5883\u754c\u3067\u306f\u30d5\u30a9\u30fc\u30e0\u306e\u5b58\u5728\u3068\u30b3\u30f3\u30c6\u30ad\u30b9\u30c8\u3060\u3051\u3092\u5951\u7d04\u3057\u3001\u5185\u90e8\u69cb\u9020\u306f\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5883\u754c\u306b\u59d4\u306d\u308b\u305f\u3081\u8ffd\u52a0\u30ad\u30fc\u5236\u7d04\u3092\u7f6e\u304b\u306a\u3044\u3002"
                    },
                    "orderStatuses": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9\u4e00\u89a7",
                        "description": "/admin/order-status \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9\u4e00\u89a7\u3002\u914d\u5217\u8981\u7d20\u306fALPS\u610f\u5473\u3068Fake\u89b3\u5bdf\u306b\u57fa\u3065\u304d\u3001\u56fa\u5b9a\u3067\u304d\u306a\u3044\u52d5\u7684\u5217\u306f\u4f8b\u5916\u7406\u7531\u3092\u53f0\u5e33\u5316\u3059\u308b\u3002",
                        "items": {
                            "type": [
                                "object",
                                "null"
                            ],
                            "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                            "description": "/admin/order-status \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `orderStatuses` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002",
                            "properties": {
                                "displayOrderCountKey": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "title": "\u8868\u793a\u9806\u4ef6\u6570\u30ad\u30fc",
                                    "description": "/admin/order-status \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u8868\u793a\u9806\u4ef6\u6570\u30ad\u30fc\u3002\u6570\u5024\u6f14\u7b97\u5bfe\u8c61\u3067\u306f\u306a\u304f\u3001\u7167\u5408\u30fbURL\u30fb\u914d\u9001\u8ffd\u8de1\u306a\u3069\u306b\u4f7f\u3046\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u8b58\u5225\u5b50\u3002",
                                    "minLength": 0,
                                    "maxLength": 128,
                                    "$comment": "\u30ad\u30fc/\u8ffd\u8de1\u756a\u53f7\u306f\u7167\u5408\u7528\u306e\u4e0d\u900f\u660e\u6587\u5b57\u5217\u3067\u3001\u6570\u5024\u6f14\u7b97\u5bfe\u8c61\u3067\u306f\u306a\u3044\u3002"
                                },
                                "customerNameKey": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 128,
                                    "title": "\u9867\u5ba2\u540d\u30ad\u30fc",
                                    "description": "/admin/order-status \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u9867\u5ba2\u540d\u30ad\u30fc\u3002\u6570\u5024\u6f14\u7b97\u5bfe\u8c61\u3067\u306f\u306a\u304f\u3001\u7167\u5408\u30fbURL\u30fb\u914d\u9001\u8ffd\u8de1\u306a\u3069\u306b\u4f7f\u3046\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u8b58\u5225\u5b50\u3002",
                                    "$comment": "\u30ad\u30fc/\u8ffd\u8de1\u756a\u53f7\u306f\u7167\u5408\u7528\u306e\u4e0d\u900f\u660e\u6587\u5b57\u5217\u3067\u3001\u6570\u5024\u6f14\u7b97\u5bfe\u8c61\u3067\u306f\u306a\u3044\u3002"
                                },
                                "id": {
                                    "type": [
                                        "string",
                                        "integer",
                                        "null"
                                    ],
                                    "title": "ID",
                                    "description": "Fake\u89b3\u5bdf\u6587\u5b57\u9577 13\u301c32; \u89b3\u5bdf\u5024 'ad000000000000000000000000000001', 'ad000000000000000000000000000003', 'fedcba9876543210fedcba9876543210', '10000000aaaa1111bbbb2222cccc3333', 'ad000000000000000000000000000002', '0123456789abcdef0123456789abcdef', 'aaaaaaaa00000000bbbbbbbb11111111', '20000000dddd2222eeee3333ffff4444'\u3002",
                                    "example": "ad000000000000000000000000000001",
                                    "minLength": 0,
                                    "maxLength": 128,
                                    "$comment": "Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u305f\u3081\u3001\u3053\u306e\u5883\u754c\u3060\u3051mixedBoundaryId\u3068\u3057\u3066\u6271\u3046\u3002"
                                },
                                "nameKey": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 128,
                                    "title": "\u540d\u79f0\u30ad\u30fc",
                                    "description": "/admin/order-status \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u540d\u79f0\u30ad\u30fc\u3002\u6570\u5024\u6f14\u7b97\u5bfe\u8c61\u3067\u306f\u306a\u304f\u3001\u7167\u5408\u30fbURL\u30fb\u914d\u9001\u8ffd\u8de1\u306a\u3069\u306b\u4f7f\u3046\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u8b58\u5225\u5b50\u3002",
                                    "$comment": "\u30ad\u30fc/\u8ffd\u8de1\u756a\u53f7\u306f\u7167\u5408\u7528\u306e\u4e0d\u900f\u660e\u6587\u5b57\u5217\u3067\u3001\u6570\u5024\u6f14\u7b97\u5bfe\u8c61\u3067\u306f\u306a\u3044\u3002"
                                },
                                "colorKey": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 128,
                                    "title": "\u8272\u30ad\u30fc",
                                    "description": "/admin/order-status \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u8272\u30ad\u30fc\u3002\u6570\u5024\u6f14\u7b97\u5bfe\u8c61\u3067\u306f\u306a\u304f\u3001\u7167\u5408\u30fbURL\u30fb\u914d\u9001\u8ffd\u8de1\u306a\u3069\u306b\u4f7f\u3046\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u8b58\u5225\u5b50\u3002",
                                    "$comment": "\u30ad\u30fc/\u8ffd\u8de1\u756a\u53f7\u306f\u7167\u5408\u7528\u306e\u4e0d\u900f\u660e\u6587\u5b57\u5217\u3067\u3001\u6570\u5024\u6f14\u7b97\u5bfe\u8c61\u3067\u306f\u306a\u3044\u3002"
                                }
                            },
                            "$comment": "\u914d\u5217\u8981\u7d20\u306f\u30de\u30b9\u30bf/CSV/option map\u306e\u52d5\u7684\u884c\u3067\u3042\u308a\u3001\u5217\u96c6\u5408\u304c\u5bfe\u8c61\u7a2e\u5225\u306b\u3088\u308a\u5909\u308f\u308b\u305f\u3081\u56fa\u5b9ashape\u5316\u3057\u306a\u3044\u3002\u65e2\u77e5property\u306f\u5951\u7d04\u3057\u3001\u8ffd\u52a0\u5217\u306f\u8a72\u5f53\u30b5\u30fc\u30d3\u30b9\u5883\u754c\u3067\u6271\u3046\u3002"
                        },
                        "minItems": 0
                    },
                    "csrfToken": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]*$",
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "POST /admin/order-status \u306ehidden input\u3067\u9001\u308bCSRF\u30c8\u30fc\u30af\u30f3\u3002"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "orderStatuses",
                    "csrfToken"
                ]
            },
            "PUT/admin/order-statusResponse": {
                "title": "PUT /admin/order-status response",
                "description": "PUT /admin/order-status response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "orderStatusRows": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 255,
                        "title": "\u53d7\u6ce8\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916"
                    },
                    "message": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u6ce8\u6587\u30e1\u30c3\u30bb\u30fc\u30b8",
                        "description": "/admin/order-status \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u51e6\u7406\u7d50\u679c\u30e1\u30c3\u30bb\u30fc\u30b8\u3002\u6ce8\u6587\u6642\u304a\u554f\u3044\u5408\u308f\u305b\u6b04\u3067\u306f\u306a\u304f\u3001\u753b\u9762\u9077\u79fb\u3084\u5b8c\u4e86\u8868\u793a\u306e\u305f\u3081\u306e\u901a\u77e5\u6587\u3002",
                        "example": "\u914d\u9001\u306f\u5e73\u65e5\u5e0c\u671b\u3067\u3059\u3002"
                    },
                    "count": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 2147483647,
                        "title": "\u4ef6\u6570",
                        "description": "/admin/order-status \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8fd4\u3059\u4ef6\u6570\u3002\u4e00\u89a7\u30fb\u96c6\u8a08\u30fb\u51e6\u7406\u7d50\u679c\u306e\u898f\u6a21\u3092\u8868\u3059\u975e\u8ca0\u6574\u6570\u3002"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "\u3053\u306e\u30ec\u30b9\u30dd\u30f3\u30b9/\u64cd\u4f5c\u304c\u5bfe\u5fdc\u3059\u308bALPS\u9077\u79fbID\u3002\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u306e\u72b6\u614b\u9077\u79fb\u8ffd\u8de1\u306b\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "orderStatusRows",
                    "count",
                    "transitionId"
                ]
            },
            "POST/admin/order-statusResponse": {
                "title": "POST /admin/order-status response",
                "description": "POST /admin/order-status response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "changed": {
                        "type": [
                            "boolean",
                            "null"
                        ],
                        "title": "\u51e6\u7406\u72b6\u614b\u30d5\u30e9\u30b0",
                        "description": "Fake\u89b3\u5bdf\u6570\u5024 1\u301c1; \u89b3\u5bdf\u5024 '1'\u3002",
                        "example": "1"
                    },
                    "previousStatus": {
                        "title": "\u51e6\u7406\u4e00\u89a7",
                        "description": "/admin/order-status \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u51e6\u7406\u4e00\u89a7\u3002ALPS\u3001Fake\u89b3\u5bdf\u3001Resource\u5883\u754c\u306e\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305f\u696d\u52d9\u5951\u7d04\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "orderNo": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 64,
                        "title": "\u6ce8\u6587\u756a\u53f7",
                        "description": "\u9867\u5ba2\u5411\u3051\u306e\u6ce8\u6587\u756a\u53f7\u3002\u30d5\u30a9\u30fc\u30de\u30c3\u30c8\u306f\u30ab\u30b9\u30bf\u30de\u30a4\u30ba\u53ef\u80fd Fake\u89b3\u5bdf\u6587\u5b57\u9577 32\u301c32; \u89b3\u5bdf\u5024 'past0000000000000000000000000001'\u3002",
                        "example": "past0000000000000000000000000001"
                    },
                    "orderStatus": {
                        "title": "\u53d7\u6ce8\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 Fake\u89b3\u5bdf\u6570\u5024 1\u301c1; \u89b3\u5bdf\u5024 '1'\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "changed",
                    "previousStatus",
                    "orderNo",
                    "orderStatus"
                ]
            },
            "DELETE/admin/pluginResponse": {
                "title": "DELETE /admin/plugin response",
                "description": "DELETE /admin/plugin response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "pluginCode": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/+-]*$",
                        "title": "\u30d7\u30e9\u30b0\u30a4\u30f3\u30b3\u30fc\u30c9",
                        "description": "\u30d7\u30e9\u30b0\u30a4\u30f3\u306e\u4e00\u610f\u8b58\u5225\u5b50\u3002dtb_plugin.code \u306b\u683c\u7d0d\u3059\u308b\u81ea\u7136\u30ad\u30fc \u2014 \u5217\u540d\u306f `code` \u3067\u3042\u3063\u3066 `plugin_code` \u3067\u306f\u306a\u3044\uff08dtb_plugin \u306f EC-CUBE \u5f8c\u767a\u306e dtb_*_code \u547d\u540d\u898f\u7d04\u3088\u308a\u53e4\u3044\uff09\u3002findByCode / install / uninstall / setEnabled \u306e\u5168\u30e9\u30a4\u30d5\u30b5\u30a4\u30af\u30eb\u30e1\u30bd\u30c3\u30c9\u304c\u3053\u306e\u5217\u3092\u30d7\u30ed\u30fc\u30d6\u3059\u308b\u3002dtb_plugin \u306f FK \u5236\u7d04\u3092\u6301\u305f\u306a\u3044\u304c structure-only \u30c0\u30f3\u30d7\u3067\u306f\u7a7a\u306e\u305f\u3081\u3001SQL \u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30c6\u30b9\u30c8\u306f seedPlugins \u30672\u3064\u306e\u30c7\u30e2\u30d7\u30e9\u30b0\u30a4\u30f3\uff08Sample/SamplePlugin, Sample/DisabledPlugin\uff09\u3092\u30b7\u30fc\u30c9\u3059\u308b Fake\u89b3\u5bdf\u6587\u5b57\u9577 19\u301c21; \u89b3\u5bdf\u5024 'Sample/SamplePlugin', 'Sample/DisabledPlugin'\u3002",
                        "example": "Sample/SamplePlugin"
                    },
                    "wasInstalled": {
                        "type": [
                            "boolean",
                            "null"
                        ],
                        "title": "\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u6e08\u307f\u7d50\u679c",
                        "description": "/admin/plugin \u306e\u51e6\u7406\u72b6\u614b\u3092\u793a\u3059\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u6e08\u307f\u7d50\u679c\u3002\u753b\u9762\u8868\u793a\u3084\u51aa\u7b49\u51e6\u7406\u7d50\u679c\u306e\u5206\u5c90\u306b\u4f7f\u3046\u771f\u507d\u5024\u3002"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "pluginCode",
                    "wasInstalled"
                ]
            },
            "POST/admin/plugin-disableResponse": {
                "title": "POST /admin/plugin-disable response",
                "description": "POST /admin/plugin-disable response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "changed": {
                        "type": [
                            "boolean",
                            "null"
                        ],
                        "title": "\u51e6\u7406\u72b6\u614b\u30d5\u30e9\u30b0",
                        "description": "Fake\u89b3\u5bdf\u6570\u5024 1\u301c1; \u89b3\u5bdf\u5024 '1'\u3002",
                        "example": "1"
                    },
                    "pluginCode": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/+-]*$",
                        "title": "\u30d7\u30e9\u30b0\u30a4\u30f3\u30b3\u30fc\u30c9",
                        "description": "\u30d7\u30e9\u30b0\u30a4\u30f3\u306e\u4e00\u610f\u8b58\u5225\u5b50\u3002dtb_plugin.code \u306b\u683c\u7d0d\u3059\u308b\u81ea\u7136\u30ad\u30fc \u2014 \u5217\u540d\u306f `code` \u3067\u3042\u3063\u3066 `plugin_code` \u3067\u306f\u306a\u3044\uff08dtb_plugin \u306f EC-CUBE \u5f8c\u767a\u306e dtb_*_code \u547d\u540d\u898f\u7d04\u3088\u308a\u53e4\u3044\uff09\u3002findByCode / install / uninstall / setEnabled \u306e\u5168\u30e9\u30a4\u30d5\u30b5\u30a4\u30af\u30eb\u30e1\u30bd\u30c3\u30c9\u304c\u3053\u306e\u5217\u3092\u30d7\u30ed\u30fc\u30d6\u3059\u308b\u3002dtb_plugin \u306f FK \u5236\u7d04\u3092\u6301\u305f\u306a\u3044\u304c structure-only \u30c0\u30f3\u30d7\u3067\u306f\u7a7a\u306e\u305f\u3081\u3001SQL \u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30c6\u30b9\u30c8\u306f seedPlugins \u30672\u3064\u306e\u30c7\u30e2\u30d7\u30e9\u30b0\u30a4\u30f3\uff08Sample/SamplePlugin, Sample/DisabledPlugin\uff09\u3092\u30b7\u30fc\u30c9\u3059\u308b Fake\u89b3\u5bdf\u6587\u5b57\u9577 19\u301c21; \u89b3\u5bdf\u5024 'Sample/SamplePlugin', 'Sample/DisabledPlugin'\u3002",
                        "example": "Sample/SamplePlugin"
                    },
                    "enabled": {
                        "type": [
                            "boolean",
                            "null"
                        ],
                        "title": "\u51e6\u7406\u72b6\u614b\u30d5\u30e9\u30b0",
                        "description": "\u89b3\u5bdf\u5024 'true', 'false'\u3002",
                        "example": "true"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "changed",
                    "pluginCode",
                    "enabled"
                ]
            },
            "POST/admin/plugin-enableResponse": {
                "title": "POST /admin/plugin-enable response",
                "description": "POST /admin/plugin-enable response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "changed": {
                        "type": [
                            "boolean",
                            "null"
                        ],
                        "title": "\u51e6\u7406\u72b6\u614b\u30d5\u30e9\u30b0",
                        "description": "Fake\u89b3\u5bdf\u6570\u5024 1\u301c1; \u89b3\u5bdf\u5024 '1'\u3002",
                        "example": "1"
                    },
                    "pluginCode": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/+-]*$",
                        "title": "\u30d7\u30e9\u30b0\u30a4\u30f3\u30b3\u30fc\u30c9",
                        "description": "\u30d7\u30e9\u30b0\u30a4\u30f3\u306e\u4e00\u610f\u8b58\u5225\u5b50\u3002dtb_plugin.code \u306b\u683c\u7d0d\u3059\u308b\u81ea\u7136\u30ad\u30fc \u2014 \u5217\u540d\u306f `code` \u3067\u3042\u3063\u3066 `plugin_code` \u3067\u306f\u306a\u3044\uff08dtb_plugin \u306f EC-CUBE \u5f8c\u767a\u306e dtb_*_code \u547d\u540d\u898f\u7d04\u3088\u308a\u53e4\u3044\uff09\u3002findByCode / install / uninstall / setEnabled \u306e\u5168\u30e9\u30a4\u30d5\u30b5\u30a4\u30af\u30eb\u30e1\u30bd\u30c3\u30c9\u304c\u3053\u306e\u5217\u3092\u30d7\u30ed\u30fc\u30d6\u3059\u308b\u3002dtb_plugin \u306f FK \u5236\u7d04\u3092\u6301\u305f\u306a\u3044\u304c structure-only \u30c0\u30f3\u30d7\u3067\u306f\u7a7a\u306e\u305f\u3081\u3001SQL \u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30c6\u30b9\u30c8\u306f seedPlugins \u30672\u3064\u306e\u30c7\u30e2\u30d7\u30e9\u30b0\u30a4\u30f3\uff08Sample/SamplePlugin, Sample/DisabledPlugin\uff09\u3092\u30b7\u30fc\u30c9\u3059\u308b Fake\u89b3\u5bdf\u6587\u5b57\u9577 19\u301c21; \u89b3\u5bdf\u5024 'Sample/SamplePlugin', 'Sample/DisabledPlugin'\u3002",
                        "example": "Sample/SamplePlugin"
                    },
                    "enabled": {
                        "type": [
                            "boolean",
                            "null"
                        ],
                        "title": "\u51e6\u7406\u72b6\u614b\u30d5\u30e9\u30b0",
                        "description": "\u89b3\u5bdf\u5024 'true', 'false'\u3002",
                        "example": "true"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "changed",
                    "pluginCode",
                    "enabled"
                ]
            },
            "GET/admin/plugin-listResponse": {
                "title": "GET /admin/plugin-list response",
                "description": "GET /admin/plugin-list response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "plugins": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u30d7\u30e9\u30b0\u30a4\u30f3\u4e00\u89a7",
                        "description": "/admin/plugin-list \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u30d7\u30e9\u30b0\u30a4\u30f3\u4e00\u89a7\u3002\u914d\u5217\u8981\u7d20\u306fALPS\u610f\u5473\u3068Fake\u89b3\u5bdf\u306b\u57fa\u3065\u304d\u3001\u56fa\u5b9a\u3067\u304d\u306a\u3044\u52d5\u7684\u5217\u306f\u4f8b\u5916\u7406\u7531\u3092\u53f0\u5e33\u5316\u3059\u308b\u3002",
                        "items": {
                            "type": [
                                "object",
                                "null"
                            ],
                            "title": "\u30d7\u30e9\u30b0\u30a4\u30f3",
                            "description": "/admin/plugin-list \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u30d7\u30e9\u30b0\u30a4\u30f3\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `plugins` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002",
                            "properties": {
                                "pluginCode": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 128,
                                    "pattern": "^[A-Za-z0-9._:@/+-]*$",
                                    "title": "\u30d7\u30e9\u30b0\u30a4\u30f3\u30b3\u30fc\u30c9",
                                    "description": "\u30d7\u30e9\u30b0\u30a4\u30f3\u306e\u4e00\u610f\u8b58\u5225\u5b50\u3002dtb_plugin.code \u306b\u683c\u7d0d\u3059\u308b\u81ea\u7136\u30ad\u30fc \u2014 \u5217\u540d\u306f `code` \u3067\u3042\u3063\u3066 `plugin_code` \u3067\u306f\u306a\u3044\uff08dtb_plugin \u306f EC-CUBE \u5f8c\u767a\u306e dtb_*_code \u547d\u540d\u898f\u7d04\u3088\u308a\u53e4\u3044\uff09\u3002findByCode / install / uninstall / setEnabled \u306e\u5168\u30e9\u30a4\u30d5\u30b5\u30a4\u30af\u30eb\u30e1\u30bd\u30c3\u30c9\u304c\u3053\u306e\u5217\u3092\u30d7\u30ed\u30fc\u30d6\u3059\u308b\u3002dtb_plugin \u306f FK \u5236\u7d04\u3092\u6301\u305f\u306a\u3044\u304c structure-only \u30c0\u30f3\u30d7\u3067\u306f\u7a7a\u306e\u305f\u3081\u3001SQL \u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30c6\u30b9\u30c8\u306f seedPlugins \u30672\u3064\u306e\u30c7\u30e2\u30d7\u30e9\u30b0\u30a4\u30f3\uff08Sample/SamplePlugin, Sample/DisabledPlugin\uff09\u3092\u30b7\u30fc\u30c9\u3059\u308b Fake\u89b3\u5bdf\u6587\u5b57\u9577 19\u301c21; \u89b3\u5bdf\u5024 'Sample/SamplePlugin', 'Sample/DisabledPlugin'\u3002",
                                    "example": "Sample/SamplePlugin"
                                },
                                "installed": {
                                    "type": [
                                        "boolean",
                                        "null"
                                    ],
                                    "title": "\u51e6\u7406\u72b6\u614b\u30d5\u30e9\u30b0",
                                    "description": "Fake\u89b3\u5bdf\u6570\u5024 1\u301c1; \u89b3\u5bdf\u5024 'true', '1'\u3002",
                                    "example": "true"
                                },
                                "pluginName": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 128,
                                    "title": "\u30d7\u30e9\u30b0\u30a4\u30f3\u540d",
                                    "description": "\u30d7\u30e9\u30b0\u30a4\u30f3\u306e\u8868\u793a\u540d\u3002dtb_plugin.name \u306b\u683c\u7d0d\u3002PluginEntity \u306e pluginName \u306b\u5bfe\u5fdc Fake\u89b3\u5bdf\u6587\u5b57\u9577 13\u301c22; \u89b3\u5bdf\u5024 'Sample Plugin', 'Disabled Sample Plugin'\u3002",
                                    "example": "Sample Plugin"
                                },
                                "enabled": {
                                    "type": [
                                        "boolean",
                                        "null"
                                    ],
                                    "title": "\u51e6\u7406\u72b6\u614b\u30d5\u30e9\u30b0",
                                    "description": "\u89b3\u5bdf\u5024 'true', 'false'\u3002",
                                    "example": "true"
                                },
                                "pluginVersion": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 255,
                                    "title": "\u30d7\u30e9\u30b0\u30a4\u30f3\u30d0\u30fc\u30b8\u30e7\u30f3",
                                    "description": "\u30d7\u30e9\u30b0\u30a4\u30f3\u306e\u30d0\u30fc\u30b8\u30e7\u30f3\u6587\u5b57\u5217\u3002dtb_plugin.version \u306b\u683c\u7d0d\u3002PluginEntity \u306e version \u306b\u5bfe\u5fdc"
                                }
                            },
                            "additionalProperties": false,
                            "$comment": "\u914d\u5217\u8981\u7d20\u306fFake/Resource\u3067\u89b3\u5bdf\u3055\u308c\u305f\u65e2\u77e5property\u306b\u56fa\u5b9a\u3059\u308b\u3002\u65b0\u3057\u3044\u5217\u304c\u5fc5\u8981\u306b\u306a\u3063\u305f\u5834\u5408\u306fSemantic-Ex\u89b3\u5bdf\u306b\u8ffd\u52a0\u3057\u3066schema\u3092\u66f4\u65b0\u3059\u308b\u3002"
                        },
                        "minItems": 0
                    },
                    "count": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 2147483647,
                        "title": "\u4ef6\u6570",
                        "description": "/admin/plugin-list \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8fd4\u3059\u4ef6\u6570\u3002\u4e00\u89a7\u30fb\u96c6\u8a08\u30fb\u51e6\u7406\u7d50\u679c\u306e\u898f\u6a21\u3092\u8868\u3059\u975e\u8ca0\u6574\u6570\u3002"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "plugins",
                    "count"
                ]
            },
            "POST/admin/plugin-listResponse": {
                "title": "POST /admin/plugin-list response",
                "description": "POST /admin/plugin-list response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "pluginCode": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/+-]*$",
                        "title": "\u30d7\u30e9\u30b0\u30a4\u30f3\u30b3\u30fc\u30c9",
                        "description": "\u30d7\u30e9\u30b0\u30a4\u30f3\u306e\u4e00\u610f\u8b58\u5225\u5b50\u3002dtb_plugin.code \u306b\u683c\u7d0d\u3059\u308b\u81ea\u7136\u30ad\u30fc \u2014 \u5217\u540d\u306f `code` \u3067\u3042\u3063\u3066 `plugin_code` \u3067\u306f\u306a\u3044\uff08dtb_plugin \u306f EC-CUBE \u5f8c\u767a\u306e dtb_*_code \u547d\u540d\u898f\u7d04\u3088\u308a\u53e4\u3044\uff09\u3002findByCode / install / uninstall / setEnabled \u306e\u5168\u30e9\u30a4\u30d5\u30b5\u30a4\u30af\u30eb\u30e1\u30bd\u30c3\u30c9\u304c\u3053\u306e\u5217\u3092\u30d7\u30ed\u30fc\u30d6\u3059\u308b\u3002dtb_plugin \u306f FK \u5236\u7d04\u3092\u6301\u305f\u306a\u3044\u304c structure-only \u30c0\u30f3\u30d7\u3067\u306f\u7a7a\u306e\u305f\u3081\u3001SQL \u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30c6\u30b9\u30c8\u306f seedPlugins \u30672\u3064\u306e\u30c7\u30e2\u30d7\u30e9\u30b0\u30a4\u30f3\uff08Sample/SamplePlugin, Sample/DisabledPlugin\uff09\u3092\u30b7\u30fc\u30c9\u3059\u308b Fake\u89b3\u5bdf\u6587\u5b57\u9577 19\u301c21; \u89b3\u5bdf\u5024 'Sample/SamplePlugin', 'Sample/DisabledPlugin'\u3002",
                        "example": "Sample/SamplePlugin"
                    },
                    "alreadyInstalled": {
                        "type": [
                            "boolean",
                            "null"
                        ],
                        "title": "\u65e2\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u30d5\u30e9\u30b0",
                        "description": "/admin/plugin-list \u306e\u51e6\u7406\u72b6\u614b\u3092\u793a\u3059\u65e2\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u30d5\u30e9\u30b0\u3002\u753b\u9762\u8868\u793a\u3084\u51aa\u7b49\u51e6\u7406\u7d50\u679c\u306e\u5206\u5c90\u306b\u4f7f\u3046\u771f\u507d\u5024\u3002"
                    },
                    "installed": {
                        "type": [
                            "boolean",
                            "null"
                        ],
                        "title": "\u51e6\u7406\u72b6\u614b\u30d5\u30e9\u30b0",
                        "description": "Fake\u89b3\u5bdf\u6570\u5024 1\u301c1; \u89b3\u5bdf\u5024 'true', '1'\u3002",
                        "example": "true"
                    },
                    "pluginName": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "title": "\u30d7\u30e9\u30b0\u30a4\u30f3\u540d",
                        "description": "\u30d7\u30e9\u30b0\u30a4\u30f3\u306e\u8868\u793a\u540d\u3002dtb_plugin.name \u306b\u683c\u7d0d\u3002PluginEntity \u306e pluginName \u306b\u5bfe\u5fdc Fake\u89b3\u5bdf\u6587\u5b57\u9577 13\u301c22; \u89b3\u5bdf\u5024 'Sample Plugin', 'Disabled Sample Plugin'\u3002",
                        "example": "Sample Plugin"
                    },
                    "enabled": {
                        "type": [
                            "boolean",
                            "null"
                        ],
                        "title": "\u51e6\u7406\u72b6\u614b\u30d5\u30e9\u30b0",
                        "description": "\u89b3\u5bdf\u5024 'true', 'false'\u3002",
                        "example": "true"
                    },
                    "pluginVersion": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 255,
                        "title": "\u30d7\u30e9\u30b0\u30a4\u30f3\u30d0\u30fc\u30b8\u30e7\u30f3",
                        "description": "\u30d7\u30e9\u30b0\u30a4\u30f3\u306e\u30d0\u30fc\u30b8\u30e7\u30f3\u6587\u5b57\u5217\u3002dtb_plugin.version \u306b\u683c\u7d0d\u3002PluginEntity \u306e version \u306b\u5bfe\u5fdc"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "pluginCode",
                    "alreadyInstalled",
                    "installed",
                    "pluginName",
                    "enabled",
                    "pluginVersion"
                ]
            },
            "GET/admin/productResponse": {
                "title": "GET /admin/product response",
                "description": "GET /admin/product response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "stock": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 2147483647,
                        "title": "\u5728\u5eab\u6570",
                        "description": "\u7269\u7406\u5728\u5eab\u6570\u3002stockUnlimited=true\u306e\u5834\u5408\u306f\u7121\u8996\u3055\u308c\u308b\u3002\u6ce8\u6587\u78ba\u5b9a\u6642\u306b\u5f15\u304d\u5f53\u3066\u304c\u884c\u308f\u308c\u308b Fake\u89b3\u5bdf\u6570\u5024 0\u301c100; \u89b3\u5bdf\u5024 '0', '10', '20', '50', '5', '7', '100', '3'; null 9/73\u3002",
                        "example": 0
                    },
                    "productName": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "title": "\u5546\u54c1\u540d",
                        "description": "\u5546\u54c1\u306e\u8868\u793a\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 6\u301c17\u3002",
                        "example": "\u30b5\u30f3\u30d7\u30eb\u5546\u54c1 A"
                    },
                    "description": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "title": "\u8a73\u7d30\u8aac\u660e\u6587",
                        "description": "\u5546\u54c1\u8a73\u7d30\u30da\u30fc\u30b8\u306b\u8868\u793a\u3059\u308b\u8aac\u660e\u6587 Fake\u89b3\u5bdf\u6587\u5b57\u9577 12\u301c32; \u89b3\u5bdf\u5024 'Stock-unlimited fixture', 'Wave 8 admin grid: visible row', 'Wave 8 admin grid: hidden row', 'Wave 8 admin grid: withdrawn row', '\u7ba1\u7406\u753b\u9762\u304b\u3089\u540d\u79f0\u5909\u66f4\u3057\u305f\u3001\u5f69\u308a\u8c4a\u304b\u306a\u30b8\u30a7\u30e9\u30fc\u30c8\u30bb\u30c3\u30c8\u3067\u3059\u3002', '\u7ba1\u7406\u753b\u9762\u304b\u3089\u4f5c\u6210\u3057\u305f\u5546\u54c1'; null 1/7\u3002",
                        "example": "Stock-unlimited fixture"
                    },
                    "classNames": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u898f\u683c\u540d\u4e00\u89a7",
                        "description": "Fake\u89b3\u5bdf\u6570\u5024 0\u301c1\u3002",
                        "items": {
                            "type": "string",
                            "title": "\u898f\u683c\u540d",
                            "minLength": 0,
                            "maxLength": 128,
                            "description": "/admin/product \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u898f\u683c\u540d\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `classNames` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002"
                        },
                        "minItems": 0
                    },
                    "price02": {
                        "title": "\u8ca9\u58f2\u4fa1\u683c",
                        "description": "\u5b9f\u969b\u306e\u8ca9\u58f2\u4fa1\u683c\uff08\u7a0e\u629c\uff09\u3002\u7a0e\u8a08\u7b97\u30fb\u5c0f\u8a08\u8a08\u7b97\u306e\u30d9\u30fc\u30b9 Fake\u89b3\u5bdf\u6570\u5024 800\u301c28000\u3002",
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 3500
                    },
                    "mainImage": {
                        "title": "\u30e1\u30a4\u30f3\u753b\u50cfURI",
                        "description": "/admin/product \u306e\u753b\u9762\u8868\u793a\u306b\u4f7f\u3046\u30e1\u30a4\u30f3\u753b\u50cfURI\u3002\u696d\u52d9\u30a8\u30f3\u30c6\u30a3\u30c6\u30a3\u305d\u306e\u3082\u306e\u3067\u306f\u306a\u304f\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8/\u4e00\u89a7\u8868\u793a\u306e\u88dc\u52a9\u5024\u3002",
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "tagNames": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u30bf\u30b0\u540d\u4e00\u89a7",
                        "description": "Fake\u89b3\u5bdf\u6570\u5024 0\u301c2\u3002",
                        "items": {
                            "type": "string",
                            "title": "\u30bf\u30b0\u540d",
                            "minLength": 0,
                            "maxLength": 128,
                            "description": "/admin/product \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u5546\u54c1\u884c\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `tagNames` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002"
                        },
                        "minItems": 0
                    },
                    "categoryNames": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u30ab\u30c6\u30b4\u30ea\u540d\u4e00\u89a7",
                        "description": "Fake\u89b3\u5bdf\u6570\u5024 0\u301c4\u3002",
                        "items": {
                            "type": "string",
                            "title": "\u30ab\u30c6\u30b4\u30ea\u540d",
                            "minLength": 0,
                            "maxLength": 128,
                            "description": "/admin/product \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u5546\u54c1\u884c\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `categoryNames` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002"
                        },
                        "minItems": 0
                    },
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 \u5546\u54c1\u3092\u8b58\u5225\u3059\u308bSKU\u3002Fake corpus\u3067\u306fASCII\u82f1\u6570\u30fb\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3067\u3001\u53d7\u6ce8\u660e\u7d30/\u30ab\u30fc\u30c8\u660e\u7d30\u306e\u7d50\u5408\u30ad\u30fc\u306b\u306a\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c26\u3002",
                        "type": "string",
                        "minLength": 0,
                        "maxLength": 64,
                        "example": "sample-001"
                    },
                    "note": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 1000,
                        "title": "\u5546\u54c1\u5099\u8003",
                        "description": "\u7ba1\u7406\u8005\u306e\u307f\u304c\u53c2\u7167\u3059\u308b\u5185\u90e8\u30e1\u30e2\u3002\u30d5\u30ed\u30f3\u30c8\u306b\u306f\u8868\u793a\u3055\u308c\u306a\u3044 Fake\u89b3\u5bdf\u6587\u5b57\u9577 11\u301c25; \u89b3\u5bdf\u5024 'internal note A', 'internal note C', 'internal note B', '\u7ba1\u7406\u753b\u9762\u540d\u79f0\u5909\u66f4 smoke 2026-05-23', 'Codex smoke'; null 10/42\u3002",
                        "example": "internal note A"
                    },
                    "productStatusOptions": {
                        "type": "object",
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "$comment": "\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u7531\u6765\u307e\u305f\u306f\u52d5\u7684map\u306e\u305f\u3081\u3001JSON\u5883\u754c\u3067\u306fobject\u3067\u3042\u308b\u3053\u3068\u3068\u610f\u5473\u3092\u5951\u7d04\u3057\u3001\u5185\u90e8\u30ad\u30fc\u306f\u5225\u5883\u754c\u3067\u6271\u3046\u3002\u8ffd\u52a0\u30ad\u30fc\u306f\u4e0d\u900f\u660e\u69cb\u9020\u3068\u3057\u3066\u8a31\u5bb9\u3059\u308b\u3002"
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09 Fake\u89b3\u5bdf\u6570\u5024 1\u301c3; \u89b3\u5bdf\u5024 '1', '2', '3'\u3002",
                        "type": [
                            "integer",
                            "null"
                        ],
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "csrfToken": {
                        "title": "\u51e6\u7406\u8b58\u5225\u5b50",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u306e\u507d\u9020\u3092\u9632\u3050\u305f\u3081\u306b\u9001\u4fe1\u5143\u753b\u9762\u3067\u767a\u884c\u3055\u308c\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "searchWord": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 1000,
                        "title": "\u691c\u7d22\u30ef\u30fc\u30c9",
                        "description": "\u30d5\u30ed\u30f3\u30c8\u691c\u7d22\u3067\u30d2\u30c3\u30c8\u3055\u305b\u308b\u305f\u3081\u306e\u30ad\u30fc\u30ef\u30fc\u30c9\u3002\u753b\u9762\u306b\u306f\u8868\u793a\u3055\u308c\u306a\u3044\u691c\u7d22\u88dc\u52a9\u30c7\u30fc\u30bf Fake\u89b3\u5bdf\u6587\u5b57\u9577 9\u301c15; \u89b3\u5bdf\u5024 '\u7ba1\u7406 active', '\u7ba1\u7406 withdrawn', '\u7ba1\u7406 hidden', '\u30b8\u30a7\u30e9\u30fc\u30c8 \u30ae\u30d5\u30c8 \u5f69 api', 'ui create'; null 10/42\u3002",
                        "example": "\u7ba1\u7406 active"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "productName",
                    "price02",
                    "productCode",
                    "productStatusOptions",
                    "productStatus"
                ]
            },
            "POST/admin/productResponse": {
                "title": "POST /admin/product response",
                "description": "POST /admin/product response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "stock": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 2147483647,
                        "title": "\u5728\u5eab\u6570",
                        "description": "\u7269\u7406\u5728\u5eab\u6570\u3002stockUnlimited=true\u306e\u5834\u5408\u306f\u7121\u8996\u3055\u308c\u308b\u3002\u6ce8\u6587\u78ba\u5b9a\u6642\u306b\u5f15\u304d\u5f53\u3066\u304c\u884c\u308f\u308c\u308b Fake\u89b3\u5bdf\u6570\u5024 0\u301c100; \u89b3\u5bdf\u5024 '0', '10', '20', '50', '5', '7', '100', '3'; null 9/73\u3002",
                        "example": 0
                    },
                    "productName": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "title": "\u5546\u54c1\u540d",
                        "description": "\u5546\u54c1\u306e\u8868\u793a\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 6\u301c17\u3002",
                        "example": "\u30b5\u30f3\u30d7\u30eb\u5546\u54c1 A"
                    },
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 \u5546\u54c1\u3092\u8b58\u5225\u3059\u308bSKU\u3002Fake corpus\u3067\u306fASCII\u82f1\u6570\u30fb\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3067\u3001\u53d7\u6ce8\u660e\u7d30/\u30ab\u30fc\u30c8\u660e\u7d30\u306e\u7d50\u5408\u30ad\u30fc\u306b\u306a\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c26\u3002",
                        "type": "string",
                        "minLength": 0,
                        "maxLength": 64,
                        "example": "sample-001"
                    },
                    "description": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "title": "\u8a73\u7d30\u8aac\u660e\u6587",
                        "description": "\u5546\u54c1\u8a73\u7d30\u30da\u30fc\u30b8\u306b\u8868\u793a\u3059\u308b\u8aac\u660e\u6587 Fake\u89b3\u5bdf\u6587\u5b57\u9577 12\u301c32; \u89b3\u5bdf\u5024 'Stock-unlimited fixture', 'Wave 8 admin grid: visible row', 'Wave 8 admin grid: hidden row', 'Wave 8 admin grid: withdrawn row', '\u7ba1\u7406\u753b\u9762\u304b\u3089\u540d\u79f0\u5909\u66f4\u3057\u305f\u3001\u5f69\u308a\u8c4a\u304b\u306a\u30b8\u30a7\u30e9\u30fc\u30c8\u30bb\u30c3\u30c8\u3067\u3059\u3002', '\u7ba1\u7406\u753b\u9762\u304b\u3089\u4f5c\u6210\u3057\u305f\u5546\u54c1'; null 1/7\u3002",
                        "example": "Stock-unlimited fixture"
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09 Fake\u89b3\u5bdf\u6570\u5024 1\u301c3; \u89b3\u5bdf\u5024 '1', '2', '3'\u3002",
                        "type": [
                            "integer",
                            "null"
                        ],
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "price02": {
                        "title": "\u8ca9\u58f2\u4fa1\u683c",
                        "description": "\u5b9f\u969b\u306e\u8ca9\u58f2\u4fa1\u683c\uff08\u7a0e\u629c\uff09\u3002\u7a0e\u8a08\u7b97\u30fb\u5c0f\u8a08\u8a08\u7b97\u306e\u30d9\u30fc\u30b9 Fake\u89b3\u5bdf\u6570\u5024 800\u301c28000\u3002",
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 3500
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "productName",
                    "productCode",
                    "productStatus",
                    "price02"
                ]
            },
            "PUT/admin/productResponse": {
                "title": "PUT /admin/product response",
                "description": "PUT /admin/product response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "stock": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 2147483647,
                        "title": "\u5728\u5eab\u6570",
                        "description": "\u7269\u7406\u5728\u5eab\u6570\u3002stockUnlimited=true\u306e\u5834\u5408\u306f\u7121\u8996\u3055\u308c\u308b\u3002\u6ce8\u6587\u78ba\u5b9a\u6642\u306b\u5f15\u304d\u5f53\u3066\u304c\u884c\u308f\u308c\u308b Fake\u89b3\u5bdf\u6570\u5024 0\u301c100; \u89b3\u5bdf\u5024 '0', '10', '20', '50', '5', '7', '100', '3'; null 9/73\u3002",
                        "example": 0
                    },
                    "productName": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "title": "\u5546\u54c1\u540d",
                        "description": "\u5546\u54c1\u306e\u8868\u793a\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 6\u301c17\u3002",
                        "example": "\u30b5\u30f3\u30d7\u30eb\u5546\u54c1 A"
                    },
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 \u5546\u54c1\u3092\u8b58\u5225\u3059\u308bSKU\u3002Fake corpus\u3067\u306fASCII\u82f1\u6570\u30fb\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3067\u3001\u53d7\u6ce8\u660e\u7d30/\u30ab\u30fc\u30c8\u660e\u7d30\u306e\u7d50\u5408\u30ad\u30fc\u306b\u306a\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c26\u3002",
                        "type": "string",
                        "minLength": 0,
                        "maxLength": 64,
                        "example": "sample-001"
                    },
                    "description": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "title": "\u8a73\u7d30\u8aac\u660e\u6587",
                        "description": "\u5546\u54c1\u8a73\u7d30\u30da\u30fc\u30b8\u306b\u8868\u793a\u3059\u308b\u8aac\u660e\u6587 Fake\u89b3\u5bdf\u6587\u5b57\u9577 12\u301c32; \u89b3\u5bdf\u5024 'Stock-unlimited fixture', 'Wave 8 admin grid: visible row', 'Wave 8 admin grid: hidden row', 'Wave 8 admin grid: withdrawn row', '\u7ba1\u7406\u753b\u9762\u304b\u3089\u540d\u79f0\u5909\u66f4\u3057\u305f\u3001\u5f69\u308a\u8c4a\u304b\u306a\u30b8\u30a7\u30e9\u30fc\u30c8\u30bb\u30c3\u30c8\u3067\u3059\u3002', '\u7ba1\u7406\u753b\u9762\u304b\u3089\u4f5c\u6210\u3057\u305f\u5546\u54c1'; null 1/7\u3002",
                        "example": "Stock-unlimited fixture"
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09 Fake\u89b3\u5bdf\u6570\u5024 1\u301c3; \u89b3\u5bdf\u5024 '1', '2', '3'\u3002",
                        "type": [
                            "integer",
                            "null"
                        ],
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "price02": {
                        "title": "\u8ca9\u58f2\u4fa1\u683c",
                        "description": "\u5b9f\u969b\u306e\u8ca9\u58f2\u4fa1\u683c\uff08\u7a0e\u629c\uff09\u3002\u7a0e\u8a08\u7b97\u30fb\u5c0f\u8a08\u8a08\u7b97\u306e\u30d9\u30fc\u30b9 Fake\u89b3\u5bdf\u6570\u5024 800\u301c28000\u3002",
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 3500
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "productName",
                    "productCode",
                    "productStatus",
                    "price02"
                ]
            },
            "DELETE/admin/productResponse": {
                "title": "DELETE /admin/product response",
                "description": "DELETE /admin/product response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "alreadyDeleted": {
                        "type": [
                            "boolean",
                            "null"
                        ],
                        "title": "\u65e2\u524a\u9664\u30d5\u30e9\u30b0",
                        "description": "/admin/product \u306e\u51e6\u7406\u72b6\u614b\u3092\u793a\u3059\u65e2\u524a\u9664\u30d5\u30e9\u30b0\u3002\u753b\u9762\u8868\u793a\u3084\u51aa\u7b49\u51e6\u7406\u7d50\u679c\u306e\u5206\u5c90\u306b\u4f7f\u3046\u771f\u507d\u5024\u3002"
                    },
                    "productName": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "title": "\u5546\u54c1\u540d",
                        "description": "\u5546\u54c1\u306e\u8868\u793a\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 6\u301c17\u3002",
                        "example": "\u30b5\u30f3\u30d7\u30eb\u5546\u54c1 A"
                    },
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 \u5546\u54c1\u3092\u8b58\u5225\u3059\u308bSKU\u3002Fake corpus\u3067\u306fASCII\u82f1\u6570\u30fb\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3067\u3001\u53d7\u6ce8\u660e\u7d30/\u30ab\u30fc\u30c8\u660e\u7d30\u306e\u7d50\u5408\u30ad\u30fc\u306b\u306a\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c26\u3002",
                        "type": "string",
                        "minLength": 0,
                        "maxLength": 64,
                        "example": "sample-001"
                    },
                    "message": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u5546\u54c1\u30e1\u30c3\u30bb\u30fc\u30b8",
                        "description": "/admin/product \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u51e6\u7406\u7d50\u679c\u30e1\u30c3\u30bb\u30fc\u30b8\u3002\u6ce8\u6587\u6642\u304a\u554f\u3044\u5408\u308f\u305b\u6b04\u3067\u306f\u306a\u304f\u3001\u753b\u9762\u9077\u79fb\u3084\u5b8c\u4e86\u8868\u793a\u306e\u305f\u3081\u306e\u901a\u77e5\u6587\u3002",
                        "example": "\u914d\u9001\u306f\u5e73\u65e5\u5e0c\u671b\u3067\u3059\u3002"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "alreadyDeleted",
                    "productName",
                    "productCode"
                ]
            },
            "POST/admin/product-bulk-statusResponse": {
                "title": "POST /admin/product-bulk-status response",
                "description": "POST /admin/product-bulk-status response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "requestedCount": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 2147483647,
                        "title": "\u4ef6\u6570",
                        "description": "/admin/product-bulk-status \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8fd4\u3059\u4ef6\u6570\u3002\u4e00\u89a7\u30fb\u96c6\u8a08\u30fb\u51e6\u7406\u7d50\u679c\u306e\u898f\u6a21\u3092\u8868\u3059\u975e\u8ca0\u6574\u6570\u3002"
                    },
                    "changedCount": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 2147483647,
                        "title": "\u4ef6\u6570",
                        "description": "/admin/product-bulk-status \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8fd4\u3059\u4ef6\u6570\u3002\u4e00\u89a7\u30fb\u96c6\u8a08\u30fb\u51e6\u7406\u7d50\u679c\u306e\u898f\u6a21\u3092\u8868\u3059\u975e\u8ca0\u6574\u6570\u3002"
                    },
                    "productCodes": {
                        "type": "array",
                        "title": "\u53d6\u8fbc\u5546\u54c1\u30b3\u30fc\u30c9\u4e00\u89a7",
                        "description": "\u5546\u54c1CSV\u53d6\u8fbc\u3067\u51e6\u7406\u5bfe\u8c61\u306b\u306a\u3063\u305fSKU\u4e00\u89a7\u3002\u5404\u8981\u7d20\u306f\u5546\u54c1\u30b3\u30fc\u30c9\u5236\u7d04\u306b\u5f93\u3046\u3002",
                        "items": {
                            "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                            "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 64,
                            "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                            "example": "sample-001"
                        },
                        "minItems": 0
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09 Fake\u89b3\u5bdf\u6570\u5024 1\u301c3; \u89b3\u5bdf\u5024 '1', '2', '3'\u3002",
                        "type": [
                            "integer",
                            "null"
                        ],
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "requestedCount",
                    "changedCount",
                    "productCodes",
                    "productStatus"
                ]
            },
            "POST/admin/product-copyResponse": {
                "title": "POST /admin/product-copy response",
                "description": "POST /admin/product-copy response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 \u5546\u54c1\u3092\u8b58\u5225\u3059\u308bSKU\u3002Fake corpus\u3067\u306fASCII\u82f1\u6570\u30fb\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3067\u3001\u53d7\u6ce8\u660e\u7d30/\u30ab\u30fc\u30c8\u660e\u7d30\u306e\u7d50\u5408\u30ad\u30fc\u306b\u306a\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c26\u3002",
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 64,
                        "example": "sample-001"
                    },
                    "newProductCode": {
                        "title": "\u51e6\u7406\u8b58\u5225\u5b50",
                        "description": "/admin/product-copy \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u51e6\u7406\u8b58\u5225\u5b50\u3002ALPS\u3001Fake\u89b3\u5bdf\u3001Resource\u5883\u754c\u306e\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305f\u696d\u52d9\u5951\u7d04\u3002",
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 64,
                        "example": "sample-001"
                    },
                    "newProductName": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 255,
                        "title": "\u8868\u793a\u9805\u76ee",
                        "description": "/admin/product-copy \u306e\u753b\u9762\u8868\u793a\u306b\u4f7f\u3046\u8868\u793a\u9805\u76ee\u3002\u696d\u52d9\u30a8\u30f3\u30c6\u30a3\u30c6\u30a3\u305d\u306e\u3082\u306e\u3067\u306f\u306a\u304f\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8/\u4e00\u89a7\u8868\u793a\u306e\u88dc\u52a9\u5024\u3002"
                    },
                    "price02": {
                        "title": "\u8ca9\u58f2\u4fa1\u683c",
                        "description": "\u5b9f\u969b\u306e\u8ca9\u58f2\u4fa1\u683c\uff08\u7a0e\u629c\uff09\u3002\u7a0e\u8a08\u7b97\u30fb\u5c0f\u8a08\u8a08\u7b97\u306e\u30d9\u30fc\u30b9 Fake\u89b3\u5bdf\u6570\u5024 800\u301c28000\u3002",
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 3500
                    },
                    "stock": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 2147483647,
                        "title": "\u5728\u5eab\u6570",
                        "description": "\u7269\u7406\u5728\u5eab\u6570\u3002stockUnlimited=true\u306e\u5834\u5408\u306f\u7121\u8996\u3055\u308c\u308b\u3002\u6ce8\u6587\u78ba\u5b9a\u6642\u306b\u5f15\u304d\u5f53\u3066\u304c\u884c\u308f\u308c\u308b Fake\u89b3\u5bdf\u6570\u5024 0\u301c100; \u89b3\u5bdf\u5024 '0', '10', '20', '50', '5', '7', '100', '3'; null 9/73\u3002",
                        "example": 0
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "productCode",
                    "newProductCode",
                    "newProductName",
                    "price02"
                ]
            },
            "GET/admin/product-csvResponse": {
                "title": "GET /admin/product-csv response",
                "description": "GET /admin/product-csv response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "count": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 2147483647,
                        "title": "\u4ef6\u6570",
                        "description": "/admin/product-csv \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8fd4\u3059\u4ef6\u6570\u3002\u4e00\u89a7\u30fb\u96c6\u8a08\u30fb\u51e6\u7406\u7d50\u679c\u306e\u898f\u6a21\u3092\u8868\u3059\u975e\u8ca0\u6574\u6570\u3002"
                    },
                    "csv": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 5000000,
                        "$comment": "CSV\u5217\u306e\u696d\u52d9\u59a5\u5f53\u6027\u306fCSV\u4e92\u63db\u30b5\u30fc\u30d3\u30b9\u3067\u691c\u67fb\u3059\u308b\u3002\u3053\u3053\u3067\u306fJSON\u5883\u754c\u4e0a\u306e\u6587\u5b57\u5217\u30b5\u30a4\u30ba\u3092\u5951\u7d04\u3059\u308b\u3002",
                        "title": "\u8f38\u9001\u30da\u30a4\u30ed\u30fc\u30c9",
                        "description": "CSV\u30a4\u30f3\u30dd\u30fc\u30c8/\u30a8\u30af\u30b9\u30dd\u30fc\u30c8\u672c\u6587\u3002\u5217\u69cb\u9020\u306e\u8a73\u7d30\u306fCSV\u4e92\u63db\u30b5\u30fc\u30d3\u30b9\u5883\u754c\u3067\u691c\u67fb\u3059\u308b\u3002"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "count",
                    "csv",
                    "csrfToken"
                ]
            },
            "POST/admin/product-csvResponse": {
                "title": "POST /admin/product-csv response",
                "description": "POST /admin/product-csv response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "message": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "CSV\u30e1\u30c3\u30bb\u30fc\u30b8",
                        "description": "/admin/product-csv \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u51e6\u7406\u7d50\u679c\u30e1\u30c3\u30bb\u30fc\u30b8\u3002\u6ce8\u6587\u6642\u304a\u554f\u3044\u5408\u308f\u305b\u6b04\u3067\u306f\u306a\u304f\u3001\u753b\u9762\u9077\u79fb\u3084\u5b8c\u4e86\u8868\u793a\u306e\u305f\u3081\u306e\u901a\u77e5\u6587\u3002",
                        "example": "\u914d\u9001\u306f\u5e73\u65e5\u5e0c\u671b\u3067\u3059\u3002"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "\u3053\u306e\u30ec\u30b9\u30dd\u30f3\u30b9/\u64cd\u4f5c\u304c\u5bfe\u5fdc\u3059\u308bALPS\u9077\u79fbID\u3002\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u306e\u72b6\u614b\u9077\u79fb\u8ffd\u8de1\u306b\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "count": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 2147483647,
                        "title": "\u4ef6\u6570",
                        "description": "/admin/product-csv \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8fd4\u3059\u4ef6\u6570\u3002\u4e00\u89a7\u30fb\u96c6\u8a08\u30fb\u51e6\u7406\u7d50\u679c\u306e\u898f\u6a21\u3092\u8868\u3059\u975e\u8ca0\u6574\u6570\u3002"
                    },
                    "productCodes": {
                        "type": "array",
                        "title": "\u53d6\u8fbc\u5546\u54c1\u30b3\u30fc\u30c9\u4e00\u89a7",
                        "description": "\u5546\u54c1CSV\u53d6\u8fbc\u3067\u51e6\u7406\u5bfe\u8c61\u306b\u306a\u3063\u305fSKU\u4e00\u89a7\u3002\u5404\u8981\u7d20\u306f\u5546\u54c1\u30b3\u30fc\u30c9\u5236\u7d04\u306b\u5f93\u3046\u3002",
                        "items": {
                            "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                            "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 64,
                            "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                            "example": "sample-001"
                        },
                        "minItems": 0
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "transitionId",
                    "count",
                    "productCodes"
                ]
            },
            "GET/admin/product-listResponse": {
                "title": "GET /admin/product-list response",
                "description": "GET /admin/product-list response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "filters": {
                        "type": [
                            "object",
                            "null"
                        ],
                        "title": "\u691c\u7d22\u6761\u4ef6",
                        "description": "/admin/product-list \u306e\u4e00\u89a7\u8868\u793a\u3092\u5236\u5fa1\u3059\u308b\u30da\u30fc\u30b8\u30f3\u30b0/\u691c\u7d22\u6761\u4ef6\u3002\u4ef6\u6570\u3001\u958b\u59cb\u4f4d\u7f6e\u3001\u4e26\u3073\u9806\u3001\u524d\u5f8c\u30ea\u30f3\u30af\u3092\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u304c\u518d\u73fe\u3059\u308b\u305f\u3081\u306e\u5024\u3002",
                        "properties": {
                            "nameKeyword": {
                                "type": [
                                    "string",
                                    "null"
                                ],
                                "minLength": 0,
                                "maxLength": 255,
                                "title": "\u540d\u524d\u691c\u7d22\u30ad\u30fc\u30ef\u30fc\u30c9",
                                "description": "/admin/product-list \u306e\u691c\u7d22\u6761\u4ef6\u3002\u5546\u54c1\u540d\u30fb\u4f1a\u54e1\u540d\u30fb\u7ba1\u7406\u8005\u540d\u306a\u3069\u3001\u3053\u306e\u4e00\u89a7\u753b\u9762\u3067\u540d\u524d\u3068\u3057\u3066\u6271\u3046\u8868\u793a\u540d\u3092\u90e8\u5206\u4e00\u81f4\u691c\u7d22\u3059\u308b\u3002",
                                "example": "\u9234\u6728"
                            },
                            "offset": {
                                "type": [
                                    "integer",
                                    "null"
                                ],
                                "minimum": 0,
                                "maximum": 2147483647,
                                "title": "\u958b\u59cb\u4f4d\u7f6e",
                                "description": "/admin/product-list \u306e\u4e00\u89a7\u8868\u793a\u3092\u5236\u5fa1\u3059\u308b\u30da\u30fc\u30b8\u30f3\u30b0/\u691c\u7d22\u6761\u4ef6\u3002\u4ef6\u6570\u3001\u958b\u59cb\u4f4d\u7f6e\u3001\u4e26\u3073\u9806\u3001\u524d\u5f8c\u30ea\u30f3\u30af\u3092\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u304c\u518d\u73fe\u3059\u308b\u305f\u3081\u306e\u5024\u3002"
                            },
                            "limit": {
                                "type": [
                                    "integer",
                                    "null"
                                ],
                                "minimum": 0,
                                "maximum": 2147483647,
                                "title": "\u8868\u793a\u4ef6\u6570",
                                "description": "/admin/product-list \u306e\u4e00\u89a7\u8868\u793a\u3092\u5236\u5fa1\u3059\u308b\u30da\u30fc\u30b8\u30f3\u30b0/\u691c\u7d22\u6761\u4ef6\u3002\u4ef6\u6570\u3001\u958b\u59cb\u4f4d\u7f6e\u3001\u4e26\u3073\u9806\u3001\u524d\u5f8c\u30ea\u30f3\u30af\u3092\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u304c\u518d\u73fe\u3059\u308b\u305f\u3081\u306e\u5024\u3002"
                            }
                        },
                        "additionalProperties": false,
                        "required": [
                            "nameKeyword",
                            "offset",
                            "limit"
                        ]
                    },
                    "count": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 2147483647,
                        "title": "\u4ef6\u6570",
                        "description": "/admin/product-list \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8fd4\u3059\u4ef6\u6570\u3002\u4e00\u89a7\u30fb\u96c6\u8a08\u30fb\u51e6\u7406\u7d50\u679c\u306e\u898f\u6a21\u3092\u8868\u3059\u975e\u8ca0\u6574\u6570\u3002"
                    },
                    "searchForm": {
                        "type": [
                            "object",
                            "array",
                            "null"
                        ],
                        "title": "\u691c\u7d22\u30d5\u30a9\u30fc\u30e0",
                        "description": "/admin/product-list \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u4fdd\u6301\u3059\u308b\u30d5\u30a9\u30fc\u30e0\u6587\u8108\u3002Aura/WebForm\u7531\u6765\u306e\u5185\u90e8\u69cb\u9020\u306f\u5225\u5883\u754c\u306e\u8cac\u52d9\u3067\u3001\u3053\u3053\u3067\u306fResource\u4e0a\u306e\u5f79\u5272\u3092\u793a\u3059\u3002",
                        "$comment": "Aura/WebForm\u7531\u6765\u306e\u4e0d\u900f\u660e\u30d5\u30a9\u30fc\u30e0\u8868\u73fe\u3002Resource\u5883\u754c\u3067\u306f\u30d5\u30a9\u30fc\u30e0\u306e\u5b58\u5728\u3068\u30b3\u30f3\u30c6\u30ad\u30b9\u30c8\u3060\u3051\u3092\u5951\u7d04\u3057\u3001\u5185\u90e8\u69cb\u9020\u306f\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5883\u754c\u306b\u59d4\u306d\u308b\u305f\u3081\u8ffd\u52a0\u30ad\u30fc\u5236\u7d04\u3092\u7f6e\u304b\u306a\u3044\u3002"
                    },
                    "products": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u5546\u54c1\u4e00\u89a7",
                        "description": "/admin/product-list \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u5546\u54c1\u4e00\u89a7\u3002\u914d\u5217\u8981\u7d20\u306fALPS\u610f\u5473\u3068Fake\u89b3\u5bdf\u306b\u57fa\u3065\u304d\u3001\u56fa\u5b9a\u3067\u304d\u306a\u3044\u52d5\u7684\u5217\u306f\u4f8b\u5916\u7406\u7531\u3092\u53f0\u5e33\u5316\u3059\u308b\u3002",
                        "items": {
                            "type": [
                                "object",
                                "null"
                            ],
                            "title": "\u5546\u54c1\u6982\u8981",
                            "description": "/admin/product-list \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u5546\u54c1\u6982\u8981\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `products` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002",
                            "properties": {
                                "tagNames": {
                                    "type": [
                                        "array",
                                        "null"
                                    ],
                                    "title": "\u30bf\u30b0\u540d\u4e00\u89a7",
                                    "description": "Fake\u89b3\u5bdf\u6570\u5024 0\u301c2\u3002",
                                    "items": {
                                        "type": "string",
                                        "title": "\u30bf\u30b0\u540d",
                                        "minLength": 0,
                                        "maxLength": 128,
                                        "description": "/admin/product-list \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u5546\u54c1\u884c\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `tagNames` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002"
                                    },
                                    "minItems": 0
                                },
                                "stock": {
                                    "type": [
                                        "integer",
                                        "null"
                                    ],
                                    "minimum": 0,
                                    "maximum": 2147483647,
                                    "title": "\u5728\u5eab\u6570",
                                    "description": "\u7269\u7406\u5728\u5eab\u6570\u3002stockUnlimited=true\u306e\u5834\u5408\u306f\u7121\u8996\u3055\u308c\u308b\u3002\u6ce8\u6587\u78ba\u5b9a\u6642\u306b\u5f15\u304d\u5f53\u3066\u304c\u884c\u308f\u308c\u308b Fake\u89b3\u5bdf\u6570\u5024 0\u301c100; \u89b3\u5bdf\u5024 '0', '10', '20', '50', '5', '7', '100', '3'; null 9/73\u3002",
                                    "example": 0
                                },
                                "productName": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 128,
                                    "title": "\u5546\u54c1\u540d",
                                    "description": "\u5546\u54c1\u306e\u8868\u793a\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 6\u301c17\u3002",
                                    "example": "\u30b5\u30f3\u30d7\u30eb\u5546\u54c1 A"
                                },
                                "categoryNames": {
                                    "type": [
                                        "array",
                                        "null"
                                    ],
                                    "title": "\u30ab\u30c6\u30b4\u30ea\u540d\u4e00\u89a7",
                                    "description": "Fake\u89b3\u5bdf\u6570\u5024 0\u301c4\u3002",
                                    "items": {
                                        "type": "string",
                                        "title": "\u30ab\u30c6\u30b4\u30ea\u540d",
                                        "minLength": 0,
                                        "maxLength": 128,
                                        "description": "/admin/product-list \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u5546\u54c1\u884c\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `categoryNames` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002"
                                    },
                                    "minItems": 0
                                },
                                "productCode": {
                                    "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                                    "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 \u5546\u54c1\u3092\u8b58\u5225\u3059\u308bSKU\u3002Fake corpus\u3067\u306fASCII\u82f1\u6570\u30fb\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3067\u3001\u53d7\u6ce8\u660e\u7d30/\u30ab\u30fc\u30c8\u660e\u7d30\u306e\u7d50\u5408\u30ad\u30fc\u306b\u306a\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c26\u3002",
                                    "type": "string",
                                    "minLength": 0,
                                    "maxLength": 64,
                                    "example": "sample-001"
                                },
                                "productStatus": {
                                    "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                                    "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09 Fake\u89b3\u5bdf\u6570\u5024 1\u301c3; \u89b3\u5bdf\u5024 '1', '2', '3'\u3002",
                                    "type": [
                                        "integer",
                                        "null"
                                    ],
                                    "enum": [
                                        1,
                                        2,
                                        3
                                    ],
                                    "example": 1
                                },
                                "imagePath": {
                                    "title": "\u753b\u50cfURI",
                                    "description": "Fake\u89b3\u5bdf\u6587\u5b57\u9577 32\u301c32; \u89b3\u5bdf\u5024 'assets/img/top/img_item02_01.jpg', 'assets/img/top/img_item01_02.jpg', 'assets/img/top/img_item02_02.jpg', 'assets/img/top/img_item02_03.jpg', 'assets/img/top/img_item01_01.jpg'; null 1/7\u3002",
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "format": "uri-reference",
                                    "minLength": 1,
                                    "maxLength": 2048,
                                    "example": "assets/img/top/img_item02_01.jpg"
                                },
                                "price02": {
                                    "title": "\u8ca9\u58f2\u4fa1\u683c",
                                    "description": "\u5b9f\u969b\u306e\u8ca9\u58f2\u4fa1\u683c\uff08\u7a0e\u629c\uff09\u3002\u7a0e\u8a08\u7b97\u30fb\u5c0f\u8a08\u8a08\u7b97\u306e\u30d9\u30fc\u30b9 Fake\u89b3\u5bdf\u6570\u5024 800\u301c28000\u3002",
                                    "type": [
                                        "integer",
                                        "null"
                                    ],
                                    "minimum": 0,
                                    "maximum": 999999999,
                                    "example": 3500
                                },
                                "unitPrice": {
                                    "title": "\u5358\u4fa1\uff08\u8868\u793a/\u8a08\u7b97\u7528\uff09",
                                    "description": "\u660e\u7d301\u4ef6\u3042\u305f\u308a\u306e\u5358\u4fa1\u3002\u53d7\u6ce8/\u30ab\u30fc\u30c8\u660e\u7d30\u30fb\u304a\u6c17\u306b\u5165\u308a\u30b9\u30ca\u30c3\u30d7\u30b7\u30e7\u30c3\u30c8\u3067\u306f\u8ffd\u52a0\u6642\u70b9\u306e price02 \u3092\u30b9\u30ca\u30c3\u30d7\u30b7\u30e7\u30c3\u30c8\u3057\u3066\u4fdd\u6301\u3059\u308b\uff08\u5f8c\u306e\u5024\u5f15\u304d\u3084\u30de\u30b9\u30bf\u6539\u5b9a\u306b\u5f71\u97ff\u3055\u308c\u306a\u3044\uff09\u3002BeMart \u5074\u3067\u306f `int` \u5186\u6574\u6570 Fake\u89b3\u5bdf\u6570\u5024 1200\u301c9800; \u89b3\u5bdf\u5024 '1200', '9800'\u3002",
                                    "type": [
                                        "integer",
                                        "null"
                                    ],
                                    "minimum": 0,
                                    "maximum": 999999999,
                                    "example": 1200
                                },
                                "fileName": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 1,
                                    "maxLength": 255,
                                    "title": "\u30d5\u30a1\u30a4\u30eb\u540d",
                                    "description": "\u5546\u54c1\u753b\u50cf\u306e\u30d5\u30a1\u30a4\u30eb\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 12\u301c15; \u89b3\u5bdf\u5024 'Mail/order.twig', 'Mail/entry.twig', 'sample-a.jpg', 'sample-b.jpg'\u3002",
                                    "example": "Mail/order.twig"
                                }
                            },
                            "additionalProperties": false,
                            "$comment": "\u914d\u5217\u8981\u7d20\u306fFake/Resource\u3067\u89b3\u5bdf\u3055\u308c\u305f\u65e2\u77e5property\u306b\u56fa\u5b9a\u3059\u308b\u3002\u65b0\u3057\u3044\u5217\u304c\u5fc5\u8981\u306b\u306a\u3063\u305f\u5834\u5408\u306fSemantic-Ex\u89b3\u5bdf\u306b\u8ffd\u52a0\u3057\u3066schema\u3092\u66f4\u65b0\u3059\u308b\u3002"
                        },
                        "minItems": 0
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "csrfToken",
                    "filters",
                    "count",
                    "products"
                ]
            },
            "GET/admin/product-newResponse": {
                "title": "GET /admin/product-new response",
                "description": "GET /admin/product-new response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "productStatusOptions": {
                        "type": "object",
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "$comment": "\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u7531\u6765\u307e\u305f\u306f\u52d5\u7684map\u306e\u305f\u3081\u3001JSON\u5883\u754c\u3067\u306fobject\u3067\u3042\u308b\u3053\u3068\u3068\u610f\u5473\u3092\u5951\u7d04\u3057\u3001\u5185\u90e8\u30ad\u30fc\u306f\u5225\u5883\u754c\u3067\u6271\u3046\u3002\u8ffd\u52a0\u30ad\u30fc\u306f\u4e0d\u900f\u660e\u69cb\u9020\u3068\u3057\u3066\u8a31\u5bb9\u3059\u308b\u3002"
                    },
                    "csrfToken": {
                        "title": "\u51e6\u7406\u8b58\u5225\u5b50",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u306e\u507d\u9020\u3092\u9632\u3050\u305f\u3081\u306b\u9001\u4fe1\u5143\u753b\u9762\u3067\u767a\u884c\u3055\u308c\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "productStatusOptions"
                ]
            },
            "GET/admin/securityResponse": {
                "title": "GET /admin/security response",
                "description": "GET /admin/security response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "isSecureRequest": {
                        "type": [
                            "boolean",
                            "null"
                        ],
                        "title": "\u30bb\u30ad\u30e5\u30a2\u30ea\u30af\u30a8\u30b9\u30c8\u5224\u5b9a",
                        "description": "/admin/security \u306e\u51e6\u7406\u72b6\u614b\u3092\u793a\u3059\u30bb\u30ad\u30e5\u30a2\u30ea\u30af\u30a8\u30b9\u30c8\u5224\u5b9a\u3002\u753b\u9762\u8868\u793a\u3084\u51aa\u7b49\u51e6\u7406\u7d50\u679c\u306e\u5206\u5c90\u306b\u4f7f\u3046\u771f\u507d\u5024\u3002"
                    },
                    "form": {
                        "type": [
                            "object",
                            "array",
                            "null"
                        ],
                        "title": "\u5165\u529b\u30d5\u30a9\u30fc\u30e0",
                        "description": "Aura/WebForm\u7531\u6765\u306e\u30d5\u30a9\u30fc\u30e0\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3002\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5185\u90e8\u69cb\u9020\u306e\u305f\u3081schema\u3067\u306f\u5b58\u5728\u3068\u578b\u306e\u307f\u3092\u5951\u7d04\u3059\u308b\u3002",
                        "$comment": "Aura/WebForm\u7531\u6765\u306e\u4e0d\u900f\u660e\u30d5\u30a9\u30fc\u30e0\u8868\u73fe\u3002Resource\u5883\u754c\u3067\u306f\u30d5\u30a9\u30fc\u30e0\u306e\u5b58\u5728\u3068\u30b3\u30f3\u30c6\u30ad\u30b9\u30c8\u3060\u3051\u3092\u5951\u7d04\u3057\u3001\u5185\u90e8\u69cb\u9020\u306f\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5883\u754c\u306b\u59d4\u306d\u308b\u305f\u3081\u8ffd\u52a0\u30ad\u30fc\u5236\u7d04\u3092\u7f6e\u304b\u306a\u3044\u3002"
                    },
                    "csrfToken": {
                        "$ref": "#/$defs/csrfToken"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "isSecureRequest"
                ]
            },
            "PUT/admin/securityResponse": {
                "title": "PUT /admin/security response",
                "description": "PUT /admin/security response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "message": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u51e6\u7406\u30e1\u30c3\u30bb\u30fc\u30b8",
                        "description": "/admin/security \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u51e6\u7406\u7d50\u679c\u30e1\u30c3\u30bb\u30fc\u30b8\u3002\u6ce8\u6587\u6642\u304a\u554f\u3044\u5408\u308f\u305b\u6b04\u3067\u306f\u306a\u304f\u3001\u753b\u9762\u9077\u79fb\u3084\u5b8c\u4e86\u8868\u793a\u306e\u305f\u3081\u306e\u901a\u77e5\u6587\u3002",
                        "example": "\u914d\u9001\u306f\u5e73\u65e5\u5e0c\u671b\u3067\u3059\u3002"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "\u3053\u306e\u30ec\u30b9\u30dd\u30f3\u30b9/\u64cd\u4f5c\u304c\u5bfe\u5fdc\u3059\u308bALPS\u9077\u79fbID\u3002\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u306e\u72b6\u614b\u9077\u79fb\u8ffd\u8de1\u306b\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "trustedHosts": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 255,
                        "title": "\u51e6\u7406\u4e00\u89a7",
                        "description": "/admin/security \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u51e6\u7406\u4e00\u89a7\u3002ALPS\u3001Fake\u89b3\u5bdf\u3001Resource\u5883\u754c\u306e\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305f\u696d\u52d9\u5951\u7d04\u3002"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "transitionId"
                ]
            },
            "PUT/admin/sort-no-moveResponse": {
                "title": "PUT /admin/sort-no-move response",
                "description": "PUT /admin/sort-no-move response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "message": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u51e6\u7406\u30e1\u30c3\u30bb\u30fc\u30b8",
                        "description": "/admin/sort-no-move \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u51e6\u7406\u7d50\u679c\u30e1\u30c3\u30bb\u30fc\u30b8\u3002\u6ce8\u6587\u6642\u304a\u554f\u3044\u5408\u308f\u305b\u6b04\u3067\u306f\u306a\u304f\u3001\u753b\u9762\u9077\u79fb\u3084\u5b8c\u4e86\u8868\u793a\u306e\u305f\u3081\u306e\u901a\u77e5\u6587\u3002",
                        "example": "\u914d\u9001\u306f\u5e73\u65e5\u5e0c\u671b\u3067\u3059\u3002"
                    },
                    "masterType": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 255,
                        "title": "\u30de\u30b9\u30bf\u7a2e\u5225",
                        "description": "/admin/sort-no-move \u306e\u51e6\u7406\u6587\u8108\u304b\u3089\u6d3e\u751f\u3057\u305f\u30de\u30b9\u30bf\u7a2e\u5225\u3002ALPS\u57fa\u790e\u8a9e\u3060\u3051\u3067\u306f\u5358\u4f4d\u3084\u7528\u9014\u304c\u4e0d\u8db3\u3059\u308b\u305f\u3081\u3001\u3053\u306eResource\u4e0a\u306e\u610f\u5473\u3092\u660e\u793a\u3059\u308b\u3002"
                    },
                    "rowId": {
                        "type": [
                            "string",
                            "integer",
                            "null"
                        ],
                        "title": "\u884cID",
                        "description": "/admin/sort-no-move \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u5bfe\u8c61\u3092\u8b58\u5225\u3059\u308b\u884cID\u3002DB\u63a1\u756aID\u3001Fake\u6587\u5b57\u5217ID\u3001\u4e92\u63db\u5883\u754cID\u306e\u3069\u308c\u306b\u8a72\u5f53\u3059\u308b\u304b\u3092schema\u306e\u578b\u3068\u30b3\u30e1\u30f3\u30c8\u3067\u5206\u3051\u308b\u3002",
                        "minLength": 0,
                        "maxLength": 128,
                        "$comment": "Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u305f\u3081\u3001\u3053\u306e\u5883\u754c\u3060\u3051mixedBoundaryId\u3068\u3057\u3066\u6271\u3046\u3002"
                    },
                    "sortNo": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 2147483647,
                        "title": "\u8868\u793a\u9806",
                        "description": "\u4e00\u89a7\u306b\u304a\u3051\u308b\u4e26\u3073\u9806 Fake\u89b3\u5bdf\u6570\u5024 1\u301c20; \u89b3\u5bdf\u5024 '1', '3', '2', '4', '10', '20'\u3002",
                        "example": 1
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "masterType",
                    "rowId",
                    "sortNo"
                ]
            },
            "GET/admin/systemResponse": {
                "title": "GET /admin/system response",
                "description": "GET /admin/system response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "info": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u30b7\u30b9\u30c6\u30e0\u60c5\u5831\u4e00\u89a7",
                        "description": "/admin/system \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u30b7\u30b9\u30c6\u30e0\u60c5\u5831\u4e00\u89a7\u3002\u914d\u5217\u8981\u7d20\u306fALPS\u610f\u5473\u3068Fake\u89b3\u5bdf\u306b\u57fa\u3065\u304d\u3001\u56fa\u5b9a\u3067\u304d\u306a\u3044\u52d5\u7684\u5217\u306f\u4f8b\u5916\u7406\u7531\u3092\u53f0\u5e33\u5316\u3059\u308b\u3002",
                        "items": {
                            "type": [
                                "object",
                                "null"
                            ],
                            "title": "\u30b7\u30b9\u30c6\u30e0\u60c5\u5831",
                            "description": "/admin/system \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u30b7\u30b9\u30c6\u30e0\u60c5\u5831\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `info` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002",
                            "properties": {
                                "title": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 255,
                                    "title": "\u51e6\u7406\u30bf\u30a4\u30c8\u30eb",
                                    "description": "/admin/system \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8868\u793a\u307e\u305f\u306f\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u63cf\u753b\u306b\u4f7f\u3046\u51e6\u7406\u30bf\u30a4\u30c8\u30eb\u3002\u540c\u540dproperty\u3067\u3082\u89aa\u6587\u8108 `root` \u306b\u3088\u3063\u3066\u610f\u5473\u3092\u5206\u3051\u308b\u3002"
                                },
                                "value": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 255,
                                    "title": "\u30b7\u30b9\u30c6\u30e0\u60c5\u5831\u5024",
                                    "description": "/admin/system \u306e\u30b7\u30b9\u30c6\u30e0\u60c5\u5831\u884c\u306b\u8868\u793a\u3055\u308c\u308b\u5024\u3002PHP/\u74b0\u5883/\u8a2d\u5b9a\u306a\u3069\u306e\u8868\u793a\u7528\u6587\u5b57\u5217\u3002"
                                }
                            },
                            "additionalProperties": false,
                            "$comment": "\u914d\u5217\u8981\u7d20\u306fFake/Resource\u3067\u89b3\u5bdf\u3055\u308c\u305f\u65e2\u77e5property\u306b\u56fa\u5b9a\u3059\u308b\u3002\u65b0\u3057\u3044\u5217\u304c\u5fc5\u8981\u306b\u306a\u3063\u305f\u5834\u5408\u306fSemantic-Ex\u89b3\u5bdf\u306b\u8ffd\u52a0\u3057\u3066schema\u3092\u66f4\u65b0\u3059\u308b\u3002"
                        },
                        "minItems": 0
                    },
                    "phpinfoEnabled": {
                        "type": [
                            "boolean",
                            "null"
                        ],
                        "title": "PHP\u60c5\u5831\u8868\u793a\u53ef\u5426",
                        "description": "/admin/system \u306e\u51e6\u7406\u72b6\u614b\u3092\u793a\u3059PHP\u60c5\u5831\u8868\u793a\u53ef\u5426\u3002\u753b\u9762\u8868\u793a\u3084\u51aa\u7b49\u51e6\u7406\u7d50\u679c\u306e\u5206\u5c90\u306b\u4f7f\u3046\u771f\u507d\u5024\u3002"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "phpinfoEnabled",
                    "csrfToken"
                ]
            },
            "PUT/admin/toggle-visibleResponse": {
                "title": "PUT /admin/toggle-visible response",
                "description": "PUT /admin/toggle-visible response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "masterType": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z][A-Za-z0-9_-]{0,63}$",
                        "title": "\u8868\u793a\u5207\u66ff\u30de\u30b9\u30bf\u7a2e\u5225",
                        "description": "/admin/toggle-visible \u3067\u8868\u793a\u72b6\u614b\u3092\u5909\u66f4\u3059\u308b\u7ba1\u7406\u30de\u30b9\u30bf\u306e\u7a2e\u5225\u3002delivery \u3084 payment \u306a\u3069\u3001\u8868\u793a\u30d5\u30e9\u30b0\u3092\u6301\u3064\u7ba1\u7406\u4e00\u89a7\u306e\u5bfe\u8c61\u3092\u8b58\u5225\u3059\u308b\u3002",
                        "example": "delivery"
                    },
                    "rowId": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "title": "\u8868\u793a\u5207\u66ff\u5bfe\u8c61\u884cID",
                        "description": "/admin/toggle-visible \u3067\u8868\u793a\u72b6\u614b\u3092\u5909\u66f4\u3059\u308b\u7ba1\u7406\u30de\u30b9\u30bf\u884c\u306eID\u3002masterType \u3068\u7d44\u307f\u5408\u308f\u305b\u3066\u5bfe\u8c61\u884c\u3092\u4e00\u610f\u306b\u6307\u3059\u3002",
                        "example": "del-yamato"
                    },
                    "visible": {
                        "type": "boolean",
                        "title": "\u8868\u793a\u72b6\u614b",
                        "description": "\u5bfe\u8c61\u30de\u30b9\u30bf\u884c\u3092\u8868\u793a\u72b6\u614b\u306b\u3059\u308b\u304b\u3069\u3046\u304b\u3092\u8868\u3059\u771f\u507d\u5024\u3002PUT \u306f\u3053\u306e\u5024\u3078\u51aa\u7b49\u306b\u8a2d\u5b9a\u3059\u308b\u3002",
                        "example": false
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "masterType",
                    "rowId",
                    "visible"
                ]
            },
            "GET/admin/trade-lawResponse": {
                "title": "GET /admin/trade-law response",
                "description": "GET /admin/trade-law response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "tradeLawBody": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 65535,
                        "title": "\u7279\u5b9a\u5546\u53d6\u5f15\u6cd5\u672c\u6587",
                        "description": "\u7279\u5b9a\u5546\u53d6\u5f15\u6cd5\u30da\u30fc\u30b8\u672c\u6587\u306e\u5358\u4e00\u30d6\u30ed\u30d6\u6295\u5f71\u3002\u9805\u76ee\u5225\u884c\u3067\u306f\u306a\u304f\u3001\u30da\u30fc\u30b8\u5168\u4f53\u30921\u672c\u306e\u672c\u6587\u3068\u3057\u3066\u6271\u3046\u3002"
                    },
                    "form": {
                        "type": [
                            "object",
                            "array",
                            "null"
                        ],
                        "title": "\u5165\u529b\u30d5\u30a9\u30fc\u30e0",
                        "description": "Aura/WebForm\u7531\u6765\u306e\u30d5\u30a9\u30fc\u30e0\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3002\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5185\u90e8\u69cb\u9020\u306e\u305f\u3081schema\u3067\u306f\u5b58\u5728\u3068\u578b\u306e\u307f\u3092\u5951\u7d04\u3059\u308b\u3002",
                        "$comment": "Aura/WebForm\u7531\u6765\u306e\u4e0d\u900f\u660e\u30d5\u30a9\u30fc\u30e0\u8868\u73fe\u3002Resource\u5883\u754c\u3067\u306f\u30d5\u30a9\u30fc\u30e0\u306e\u5b58\u5728\u3068\u30b3\u30f3\u30c6\u30ad\u30b9\u30c8\u3060\u3051\u3092\u5951\u7d04\u3057\u3001\u5185\u90e8\u69cb\u9020\u306f\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5883\u754c\u306b\u59d4\u306d\u308b\u305f\u3081\u8ffd\u52a0\u30ad\u30fc\u5236\u7d04\u3092\u7f6e\u304b\u306a\u3044\u3002"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "tradeLawRows": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u7279\u5b9a\u5546\u53d6\u5f15\u6cd5\u8868\u793a\u884c",
                        "description": "/admin/trade-law \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u7279\u5b9a\u5546\u53d6\u5f15\u6cd5\u8868\u793a\u884c\u3002\u914d\u5217\u8981\u7d20\u306fALPS\u610f\u5473\u3068Fake\u89b3\u5bdf\u306b\u57fa\u3065\u304d\u3001\u56fa\u5b9a\u3067\u304d\u306a\u3044\u52d5\u7684\u5217\u306f\u4f8b\u5916\u7406\u7531\u3092\u53f0\u5e33\u5316\u3059\u308b\u3002",
                        "items": {
                            "type": [
                                "object",
                                "null"
                            ],
                            "title": "\u7279\u5b9a\u5546\u53d6\u5f15\u6cd5\u8868\u793a\u884c",
                            "description": "/admin/trade-law \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u7279\u5b9a\u5546\u53d6\u5f15\u6cd5\u8868\u793a\u884c\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `tradeLawRows` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002",
                            "properties": {
                                "name": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 32,
                                    "title": "\u51e6\u7406\u8868\u793a\u540d",
                                    "description": "Fake\u89b3\u5bdf\u6587\u5b57\u9577 1\u301c7; \u89b3\u5bdf\u5024 '\u30c6\u30b9\u30c8\u7ba1\u7406\u8005', '\u526f\u7ba1\u7406\u8005', '\u5e97\u8217\u30aa\u30fc\u30ca\u30fc', '\u524a\u9664\u6e08\u307f\u7ba1\u7406\u8005', 'Red', 'Blue', 'S', 'Color'\u3002",
                                    "example": "\u30c6\u30b9\u30c8\u7ba1\u7406\u8005"
                                },
                                "description": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 128,
                                    "title": "\u8a73\u7d30\u8aac\u660e\u6587",
                                    "description": "\u5546\u54c1\u8a73\u7d30\u30da\u30fc\u30b8\u306b\u8868\u793a\u3059\u308b\u8aac\u660e\u6587 Fake\u89b3\u5bdf\u6587\u5b57\u9577 12\u301c32; \u89b3\u5bdf\u5024 'Stock-unlimited fixture', 'Wave 8 admin grid: visible row', 'Wave 8 admin grid: hidden row', 'Wave 8 admin grid: withdrawn row', '\u7ba1\u7406\u753b\u9762\u304b\u3089\u540d\u79f0\u5909\u66f4\u3057\u305f\u3001\u5f69\u308a\u8c4a\u304b\u306a\u30b8\u30a7\u30e9\u30fc\u30c8\u30bb\u30c3\u30c8\u3067\u3059\u3002', '\u7ba1\u7406\u753b\u9762\u304b\u3089\u4f5c\u6210\u3057\u305f\u5546\u54c1'; null 1/7\u3002",
                                    "example": "Stock-unlimited fixture"
                                },
                                "id": {
                                    "type": [
                                        "string",
                                        "integer",
                                        "null"
                                    ],
                                    "title": "ID",
                                    "description": "Fake\u89b3\u5bdf\u6587\u5b57\u9577 13\u301c32; \u89b3\u5bdf\u5024 'ad000000000000000000000000000001', 'ad000000000000000000000000000003', 'fedcba9876543210fedcba9876543210', '10000000aaaa1111bbbb2222cccc3333', 'ad000000000000000000000000000002', '0123456789abcdef0123456789abcdef', 'aaaaaaaa00000000bbbbbbbb11111111', '20000000dddd2222eeee3333ffff4444'\u3002",
                                    "example": "ad000000000000000000000000000001",
                                    "minLength": 0,
                                    "maxLength": 128,
                                    "$comment": "Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u305f\u3081\u3001\u3053\u306e\u5883\u754c\u3060\u3051mixedBoundaryId\u3068\u3057\u3066\u6271\u3046\u3002"
                                },
                                "displayOrderScreen": {
                                    "type": [
                                        "boolean",
                                        "null"
                                    ],
                                    "title": "\u8868\u793a\u9806\u753b\u9762\u30d5\u30e9\u30b0",
                                    "description": "\u6ce8\u6587\u78ba\u8a8d\u753b\u9762\u306b\u3053\u306e\u9805\u76ee\u3092\u8868\u793a\u3059\u308b\u304b"
                                },
                                "displayOrderScreenKey": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 128,
                                    "title": "\u8868\u793a\u9806\u753b\u9762\u30ad\u30fc",
                                    "description": "\u6ce8\u6587\u78ba\u8a8d\u753b\u9762\u306b\u3053\u306e\u9805\u76ee\u3092\u8868\u793a\u3059\u308b\u304b",
                                    "$comment": "\u30ad\u30fc/\u8ffd\u8de1\u756a\u53f7\u306f\u7167\u5408\u7528\u306e\u4e0d\u900f\u660e\u6587\u5b57\u5217\u3067\u3001\u6570\u5024\u6f14\u7b97\u5bfe\u8c61\u3067\u306f\u306a\u3044\u3002"
                                },
                                "nameKey": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 128,
                                    "title": "\u540d\u79f0\u30ad\u30fc",
                                    "description": "/admin/trade-law \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u540d\u79f0\u30ad\u30fc\u3002\u6570\u5024\u6f14\u7b97\u5bfe\u8c61\u3067\u306f\u306a\u304f\u3001\u7167\u5408\u30fbURL\u30fb\u914d\u9001\u8ffd\u8de1\u306a\u3069\u306b\u4f7f\u3046\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u8b58\u5225\u5b50\u3002",
                                    "$comment": "\u30ad\u30fc/\u8ffd\u8de1\u756a\u53f7\u306f\u7167\u5408\u7528\u306e\u4e0d\u900f\u660e\u6587\u5b57\u5217\u3067\u3001\u6570\u5024\u6f14\u7b97\u5bfe\u8c61\u3067\u306f\u306a\u3044\u3002"
                                },
                                "descriptionKey": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 128,
                                    "title": "\u8aac\u660e\u30ad\u30fc",
                                    "description": "/admin/trade-law \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u8aac\u660e\u30ad\u30fc\u3002\u6570\u5024\u6f14\u7b97\u5bfe\u8c61\u3067\u306f\u306a\u304f\u3001\u7167\u5408\u30fbURL\u30fb\u914d\u9001\u8ffd\u8de1\u306a\u3069\u306b\u4f7f\u3046\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u8b58\u5225\u5b50\u3002",
                                    "$comment": "\u30ad\u30fc/\u8ffd\u8de1\u756a\u53f7\u306f\u7167\u5408\u7528\u306e\u4e0d\u900f\u660e\u6587\u5b57\u5217\u3067\u3001\u6570\u5024\u6f14\u7b97\u5bfe\u8c61\u3067\u306f\u306a\u3044\u3002"
                                }
                            },
                            "$comment": "\u914d\u5217\u8981\u7d20\u306f\u30de\u30b9\u30bf/CSV/option map\u306e\u52d5\u7684\u884c\u3067\u3042\u308a\u3001\u5217\u96c6\u5408\u304c\u5bfe\u8c61\u7a2e\u5225\u306b\u3088\u308a\u5909\u308f\u308b\u305f\u3081\u56fa\u5b9ashape\u5316\u3057\u306a\u3044\u3002\u65e2\u77e5property\u306f\u5951\u7d04\u3057\u3001\u8ffd\u52a0\u5217\u306f\u8a72\u5f53\u30b5\u30fc\u30d3\u30b9\u5883\u754c\u3067\u6271\u3046\u3002"
                        },
                        "minItems": 0
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "tradeLawBody",
                    "csrfToken",
                    "tradeLawRows"
                ]
            },
            "POST/admin/trade-lawResponse": {
                "title": "POST /admin/trade-law response",
                "description": "POST /admin/trade-law response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "tradeLawBody": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 65535,
                        "title": "\u7279\u5b9a\u5546\u53d6\u5f15\u6cd5\u672c\u6587",
                        "description": "\u7279\u5b9a\u5546\u53d6\u5f15\u6cd5\u30da\u30fc\u30b8\u672c\u6587\u306e\u5358\u4e00\u30d6\u30ed\u30d6\u6295\u5f71\u3002\u9805\u76ee\u5225\u884c\u3067\u306f\u306a\u304f\u3001\u30da\u30fc\u30b8\u5168\u4f53\u30921\u672c\u306e\u672c\u6587\u3068\u3057\u3066\u6271\u3046\u3002"
                    },
                    "changed": {
                        "type": [
                            "boolean",
                            "null"
                        ],
                        "title": "\u51e6\u7406\u72b6\u614b\u30d5\u30e9\u30b0",
                        "description": "Fake\u89b3\u5bdf\u6570\u5024 1\u301c1; \u89b3\u5bdf\u5024 '1'\u3002",
                        "example": "1"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "tradeLawBody",
                    "changed"
                ]
            },
            "GET/admin/two-factor-authResponse": {
                "title": "GET /admin/two-factor-auth response",
                "description": "GET /admin/two-factor-auth response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "form": {
                        "type": [
                            "object",
                            "array",
                            "null"
                        ],
                        "title": "\u5165\u529b\u30d5\u30a9\u30fc\u30e0",
                        "description": "Aura/WebForm\u7531\u6765\u306e\u30d5\u30a9\u30fc\u30e0\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3002\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5185\u90e8\u69cb\u9020\u306e\u305f\u3081schema\u3067\u306f\u5b58\u5728\u3068\u578b\u306e\u307f\u3092\u5951\u7d04\u3059\u308b\u3002",
                        "$comment": "Aura/WebForm\u7531\u6765\u306e\u4e0d\u900f\u660e\u30d5\u30a9\u30fc\u30e0\u8868\u73fe\u3002Resource\u5883\u754c\u3067\u306f\u30d5\u30a9\u30fc\u30e0\u306e\u5b58\u5728\u3068\u30b3\u30f3\u30c6\u30ad\u30b9\u30c8\u3060\u3051\u3092\u5951\u7d04\u3057\u3001\u5185\u90e8\u69cb\u9020\u306f\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5883\u754c\u306b\u59d4\u306d\u308b\u305f\u3081\u8ffd\u52a0\u30ad\u30fc\u5236\u7d04\u3092\u7f6e\u304b\u306a\u3044\u3002"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "\u3053\u306e\u30ec\u30b9\u30dd\u30f3\u30b9/\u64cd\u4f5c\u304c\u5bfe\u5fdc\u3059\u308bALPS\u9077\u79fbID\u3002\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u306e\u72b6\u614b\u9077\u79fb\u8ffd\u8de1\u306b\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "fields": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u9759\u7684\u8868\u793a\u30d5\u30a3\u30fc\u30eb\u30c9",
                        "description": "/admin/two-factor-auth \u3067\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u3078\u6e21\u3059\u8868\u793a\u7528\u30d5\u30a3\u30fc\u30eb\u30c9\u96c6\u5408\u3002\u30d5\u30a9\u30fc\u30e0\u5165\u529b\u5024\u3067\u306f\u306a\u304f\u753b\u9762\u6587\u8108\u30c7\u30fc\u30bf\u3002",
                        "items": {
                            "type": "string",
                            "title": "\u8868\u793a\u30d5\u30a3\u30fc\u30eb\u30c9",
                            "minLength": 0,
                            "maxLength": 255,
                            "description": "/admin/two-factor-auth \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u4e8c\u8981\u7d20\u8a8d\u8a3c\u884c\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `fields` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002"
                        }
                    },
                    "csrfToken": {
                        "$ref": "#/$defs/csrfToken"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "transitionId"
                ]
            },
            "POST/admin/two-factor-authResponse": {
                "title": "POST /admin/two-factor-auth response",
                "description": "POST /admin/two-factor-auth response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "message": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u4e8c\u8981\u7d20\u8a8d\u8a3c\u30e1\u30c3\u30bb\u30fc\u30b8",
                        "description": "/admin/two-factor-auth \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u51e6\u7406\u7d50\u679c\u30e1\u30c3\u30bb\u30fc\u30b8\u3002\u6ce8\u6587\u6642\u304a\u554f\u3044\u5408\u308f\u305b\u6b04\u3067\u306f\u306a\u304f\u3001\u753b\u9762\u9077\u79fb\u3084\u5b8c\u4e86\u8868\u793a\u306e\u305f\u3081\u306e\u901a\u77e5\u6587\u3002",
                        "example": "\u914d\u9001\u306f\u5e73\u65e5\u5e0c\u671b\u3067\u3059\u3002"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "\u3053\u306e\u30ec\u30b9\u30dd\u30f3\u30b9/\u64cd\u4f5c\u304c\u5bfe\u5fdc\u3059\u308bALPS\u9077\u79fbID\u3002\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u306e\u72b6\u614b\u9077\u79fb\u8ffd\u8de1\u306b\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "loginId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u30ed\u30b0\u30a4\u30f3ID",
                        "description": "\u7ba1\u7406\u753b\u9762\u30ed\u30b0\u30a4\u30f3\u7528\u306eID\u3002\u4e00\u610f Fake\u89b3\u5bdf\u6587\u5b57\u9577 6\u301c13; \u89b3\u5bdf\u5024 'test-admin', 'shop-owner', 'deputy', 'deleted-admin', 'unknown-user'\u3002",
                        "example": "test-admin",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "transitionId",
                    "loginId"
                ]
            },
            "GET/admin/two-factor-auth-editResponse": {
                "title": "GET /admin/two-factor-auth-edit response",
                "description": "GET /admin/two-factor-auth-edit response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "form": {
                        "type": [
                            "object",
                            "array",
                            "null"
                        ],
                        "title": "\u5165\u529b\u30d5\u30a9\u30fc\u30e0",
                        "description": "Aura/WebForm\u7531\u6765\u306e\u30d5\u30a9\u30fc\u30e0\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3002\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5185\u90e8\u69cb\u9020\u306e\u305f\u3081schema\u3067\u306f\u5b58\u5728\u3068\u578b\u306e\u307f\u3092\u5951\u7d04\u3059\u308b\u3002",
                        "$comment": "Aura/WebForm\u7531\u6765\u306e\u4e0d\u900f\u660e\u30d5\u30a9\u30fc\u30e0\u8868\u73fe\u3002Resource\u5883\u754c\u3067\u306f\u30d5\u30a9\u30fc\u30e0\u306e\u5b58\u5728\u3068\u30b3\u30f3\u30c6\u30ad\u30b9\u30c8\u3060\u3051\u3092\u5951\u7d04\u3057\u3001\u5185\u90e8\u69cb\u9020\u306f\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5883\u754c\u306b\u59d4\u306d\u308b\u305f\u3081\u8ffd\u52a0\u30ad\u30fc\u5236\u7d04\u3092\u7f6e\u304b\u306a\u3044\u3002"
                    },
                    "memberName": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 255,
                        "title": "\u7ba1\u7406\u8005\u540d",
                        "description": "\u7ba1\u7406\u8005\u30e1\u30f3\u30d0\u30fc\u306e\u8868\u793a\u540d"
                    },
                    "shopName": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u30b7\u30e7\u30c3\u30d7\u540d",
                        "description": "\u30b7\u30e7\u30c3\u30d7\u306e\u8868\u793a\u540d\u3002\u30d5\u30ed\u30f3\u30c8\u753b\u9762\u306e\u30d8\u30c3\u30c0\u3084\u30e1\u30fc\u30eb\u306b\u8868\u793a Fake\u89b3\u5bdf\u6587\u5b57\u9577 12\u301c12; \u89b3\u5bdf\u5024 'EC-CUBE SHOP'\u3002",
                        "example": "EC-CUBE SHOP"
                    },
                    "authKey": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "title": "\u4e8c\u8981\u7d20\u8a8d\u8a3c\u30ad\u30fc",
                        "description": "/admin/two-factor-auth-edit \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u4e8c\u8981\u7d20\u8a8d\u8a3c\u30ad\u30fc\u3002\u6570\u5024\u6f14\u7b97\u5bfe\u8c61\u3067\u306f\u306a\u304f\u3001\u7167\u5408\u30fbURL\u30fb\u914d\u9001\u8ffd\u8de1\u306a\u3069\u306b\u4f7f\u3046\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u8b58\u5225\u5b50\u3002",
                        "$comment": "\u30ad\u30fc/\u8ffd\u8de1\u756a\u53f7\u306f\u7167\u5408\u7528\u306e\u4e0d\u900f\u660e\u6587\u5b57\u5217\u3067\u3001\u6570\u5024\u6f14\u7b97\u5bfe\u8c61\u3067\u306f\u306a\u3044\u3002"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "memberName",
                    "shopName",
                    "csrfToken"
                ]
            },
            "GET/admin/two-factor-auth-setResponse": {
                "title": "GET /admin/two-factor-auth-set response",
                "description": "GET /admin/two-factor-auth-set response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "form": {
                        "type": [
                            "object",
                            "array",
                            "null"
                        ],
                        "title": "\u5165\u529b\u30d5\u30a9\u30fc\u30e0",
                        "description": "Aura/WebForm\u7531\u6765\u306e\u30d5\u30a9\u30fc\u30e0\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3002\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5185\u90e8\u69cb\u9020\u306e\u305f\u3081schema\u3067\u306f\u5b58\u5728\u3068\u578b\u306e\u307f\u3092\u5951\u7d04\u3059\u308b\u3002",
                        "$comment": "Aura/WebForm\u7531\u6765\u306e\u4e0d\u900f\u660e\u30d5\u30a9\u30fc\u30e0\u8868\u73fe\u3002Resource\u5883\u754c\u3067\u306f\u30d5\u30a9\u30fc\u30e0\u306e\u5b58\u5728\u3068\u30b3\u30f3\u30c6\u30ad\u30b9\u30c8\u3060\u3051\u3092\u5951\u7d04\u3057\u3001\u5185\u90e8\u69cb\u9020\u306f\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5883\u754c\u306b\u59d4\u306d\u308b\u305f\u3081\u8ffd\u52a0\u30ad\u30fc\u5236\u7d04\u3092\u7f6e\u304b\u306a\u3044\u3002"
                    },
                    "fields": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u9759\u7684\u8868\u793a\u30d5\u30a3\u30fc\u30eb\u30c9",
                        "description": "/admin/two-factor-auth-set \u3067\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u3078\u6e21\u3059\u8868\u793a\u7528\u30d5\u30a3\u30fc\u30eb\u30c9\u96c6\u5408\u3002\u30d5\u30a9\u30fc\u30e0\u5165\u529b\u5024\u3067\u306f\u306a\u304f\u753b\u9762\u6587\u8108\u30c7\u30fc\u30bf\u3002",
                        "items": {
                            "type": "string",
                            "title": "\u8868\u793a\u30d5\u30a3\u30fc\u30eb\u30c9",
                            "minLength": 0,
                            "maxLength": 255,
                            "description": "/admin/two-factor-auth-set \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u4e8c\u8981\u7d20\u8a8d\u8a3c\u884c\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `fields` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002"
                        }
                    },
                    "memberName": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 255,
                        "title": "\u7ba1\u7406\u8005\u540d",
                        "description": "\u7ba1\u7406\u8005\u30e1\u30f3\u30d0\u30fc\u306e\u8868\u793a\u540d"
                    },
                    "shopName": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u30b7\u30e7\u30c3\u30d7\u540d",
                        "description": "\u30b7\u30e7\u30c3\u30d7\u306e\u8868\u793a\u540d\u3002\u30d5\u30ed\u30f3\u30c8\u753b\u9762\u306e\u30d8\u30c3\u30c0\u3084\u30e1\u30fc\u30eb\u306b\u8868\u793a Fake\u89b3\u5bdf\u6587\u5b57\u9577 12\u301c12; \u89b3\u5bdf\u5024 'EC-CUBE SHOP'\u3002",
                        "example": "EC-CUBE SHOP"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "\u3053\u306e\u30ec\u30b9\u30dd\u30f3\u30b9/\u64cd\u4f5c\u304c\u5bfe\u5fdc\u3059\u308bALPS\u9077\u79fbID\u3002\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u306e\u72b6\u614b\u9077\u79fb\u8ffd\u8de1\u306b\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "authKey": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "title": "\u4e8c\u8981\u7d20\u8a8d\u8a3c\u30ad\u30fc",
                        "description": "/admin/two-factor-auth-set \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u4e8c\u8981\u7d20\u8a8d\u8a3c\u30ad\u30fc\u3002\u6570\u5024\u6f14\u7b97\u5bfe\u8c61\u3067\u306f\u306a\u304f\u3001\u7167\u5408\u30fbURL\u30fb\u914d\u9001\u8ffd\u8de1\u306a\u3069\u306b\u4f7f\u3046\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u8b58\u5225\u5b50\u3002",
                        "$comment": "\u30ad\u30fc/\u8ffd\u8de1\u756a\u53f7\u306f\u7167\u5408\u7528\u306e\u4e0d\u900f\u660e\u6587\u5b57\u5217\u3067\u3001\u6570\u5024\u6f14\u7b97\u5bfe\u8c61\u3067\u306f\u306a\u3044\u3002"
                    },
                    "csrfToken": {
                        "$ref": "#/$defs/csrfToken"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "memberName",
                    "shopName",
                    "transitionId"
                ]
            },
            "PUT/admin/two-factor-auth-setResponse": {
                "title": "PUT /admin/two-factor-auth-set response",
                "description": "PUT /admin/two-factor-auth-set response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "message": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u4e8c\u8981\u7d20\u8a8d\u8a3c\u30e1\u30c3\u30bb\u30fc\u30b8",
                        "description": "/admin/two-factor-auth-set \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u51e6\u7406\u7d50\u679c\u30e1\u30c3\u30bb\u30fc\u30b8\u3002\u6ce8\u6587\u6642\u304a\u554f\u3044\u5408\u308f\u305b\u6b04\u3067\u306f\u306a\u304f\u3001\u753b\u9762\u9077\u79fb\u3084\u5b8c\u4e86\u8868\u793a\u306e\u305f\u3081\u306e\u901a\u77e5\u6587\u3002",
                        "example": "\u914d\u9001\u306f\u5e73\u65e5\u5e0c\u671b\u3067\u3059\u3002"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "\u3053\u306e\u30ec\u30b9\u30dd\u30f3\u30b9/\u64cd\u4f5c\u304c\u5bfe\u5fdc\u3059\u308bALPS\u9077\u79fbID\u3002\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u306e\u72b6\u614b\u9077\u79fb\u8ffd\u8de1\u306b\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "loginId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u30ed\u30b0\u30a4\u30f3ID",
                        "description": "\u7ba1\u7406\u753b\u9762\u30ed\u30b0\u30a4\u30f3\u7528\u306eID\u3002\u4e00\u610f Fake\u89b3\u5bdf\u6587\u5b57\u9577 6\u301c13; \u89b3\u5bdf\u5024 'test-admin', 'shop-owner', 'deputy', 'deleted-admin', 'unknown-user'\u3002",
                        "example": "test-admin",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "transitionId",
                    "loginId"
                ]
            },
            "GET/admin/unsupported-routeResponse": {
                "title": "GET /admin/unsupported-route response",
                "description": "GET /admin/unsupported-route response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "message": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u672a\u5bfe\u5fdc\u30eb\u30fc\u30c8\u30e1\u30c3\u30bb\u30fc\u30b8",
                        "description": "/admin/unsupported-route \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u51e6\u7406\u7d50\u679c\u30e1\u30c3\u30bb\u30fc\u30b8\u3002\u6ce8\u6587\u6642\u304a\u554f\u3044\u5408\u308f\u305b\u6b04\u3067\u306f\u306a\u304f\u3001\u753b\u9762\u9077\u79fb\u3084\u5b8c\u4e86\u8868\u793a\u306e\u305f\u3081\u306e\u901a\u77e5\u6587\u3002",
                        "example": "\u914d\u9001\u306f\u5e73\u65e5\u5e0c\u671b\u3067\u3059\u3002"
                    },
                    "routeName": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 255,
                        "title": "\u30da\u30fc\u30b8URL",
                        "description": "\u30da\u30fc\u30b8\u306eURL\u30d1\u30b9\uff08Symfony\u30eb\u30fc\u30c8\u540d\u3002\u4f8b: homepage, product_list\uff09"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "routeName"
                ]
            },
            "POST/admin/unsupported-routeResponse": {
                "title": "POST /admin/unsupported-route response",
                "description": "POST /admin/unsupported-route response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "message": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u672a\u5bfe\u5fdc\u30eb\u30fc\u30c8\u30e1\u30c3\u30bb\u30fc\u30b8",
                        "description": "/admin/unsupported-route \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u51e6\u7406\u7d50\u679c\u30e1\u30c3\u30bb\u30fc\u30b8\u3002\u6ce8\u6587\u6642\u304a\u554f\u3044\u5408\u308f\u305b\u6b04\u3067\u306f\u306a\u304f\u3001\u753b\u9762\u9077\u79fb\u3084\u5b8c\u4e86\u8868\u793a\u306e\u305f\u3081\u306e\u901a\u77e5\u6587\u3002",
                        "example": "\u914d\u9001\u306f\u5e73\u65e5\u5e0c\u671b\u3067\u3059\u3002"
                    },
                    "routeName": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 255,
                        "title": "\u30da\u30fc\u30b8URL",
                        "description": "\u30da\u30fc\u30b8\u306eURL\u30d1\u30b9\uff08Symfony\u30eb\u30fc\u30c8\u540d\u3002\u4f8b: homepage, product_list\uff09"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "routeName"
                ]
            },
            "POST/cart/itemResponse": {
                "title": "POST /cart/item response",
                "description": "POST /cart/item response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b \u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u30ad\u30fc\u3002ALPS\u306ecartKey\u306f\u30bb\u30c3\u30b7\u30e7\u30f3\u63a5\u982d\u8f9e\u3068\u8ca9\u58f2\u7a2e\u5225ID\u304b\u3089\u69cb\u6210\u3055\u308c\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 18\u301c23; \u89b3\u5bdf\u5024 'session-prefix-1_1', 'session-prefix-1_2', 'session-checkout-pilot5'\u3002",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "requestedQuantity": {
                        "title": "\u8981\u6c42\u6570\u91cf",
                        "description": "/cart/item \u306e\u51e6\u7406\u6587\u8108\u304b\u3089\u6d3e\u751f\u3057\u305f\u8981\u6c42\u6570\u91cf\u3002ALPS\u57fa\u790e\u8a9e\u3060\u3051\u3067\u306f\u5358\u4f4d\u3084\u7528\u9014\u304c\u4e0d\u8db3\u3059\u308b\u305f\u3081\u3001\u3053\u306eResource\u4e0a\u306e\u610f\u5473\u3092\u660e\u793a\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "saleTypeName": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u8ca9\u58f2\u7a2e\u5225",
                        "description": "\u8ca9\u58f2\u7a2e\u5225\u306e\u540d\u79f0\u3002\u30ab\u30fc\u30c8\u5206\u96e2\u306e\u57fa\u6e96\u3068\u306a\u308b\u3002\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8(cartKey)\u306b\u5206\u96e2\u3055\u308c\u308b Fake\u89b3\u5bdf\u6587\u5b57\u9577 4\u301c8; \u89b3\u5bdf\u5024 '\u901a\u5e38\u8ca9\u58f2', '\u4e88\u7d04\u8ca9\u58f2', '\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u8ca9\u58f2'\u3002",
                        "example": "\u901a\u5e38\u8ca9\u58f2"
                    },
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 \u5546\u54c1\u3092\u8b58\u5225\u3059\u308bSKU\u3002Fake corpus\u3067\u306fASCII\u82f1\u6570\u30fb\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3067\u3001\u53d7\u6ce8\u660e\u7d30/\u30ab\u30fc\u30c8\u660e\u7d30\u306e\u7d50\u5408\u30ad\u30fc\u306b\u306a\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c26\u3002",
                        "type": "string",
                        "minLength": 0,
                        "maxLength": 64,
                        "example": "sample-001"
                    },
                    "totalPrice": {
                        "title": "\u30ab\u30fc\u30c8\u5408\u8a08\u91d1\u984d",
                        "description": "\u30ab\u30fc\u30c8\u5185\u306e\u7a0e\u8fbc\u5408\u8a08\u91d1\u984d\u3002PurchaseFlow.calculateTotal()\u3067\u6bce\u56de\u518d\u8a08\u7b97\u3055\u308c\u308b\u30ad\u30e3\u30c3\u30b7\u30e5\u5024\u3002\u53d7\u6ce8\u306etotal\u3068\u306f\u5225\u30d7\u30ed\u30d1\u30c6\u30a3 Fake\u89b3\u5bdf\u6570\u5024 0\u301c3600; \u89b3\u5bdf\u5024 '0', '1500', '3600'\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 0
                    },
                    "unitPrice": {
                        "title": "\u5358\u4fa1\uff08\u8868\u793a/\u8a08\u7b97\u7528\uff09",
                        "description": "\u660e\u7d301\u4ef6\u3042\u305f\u308a\u306e\u5358\u4fa1\u3002\u53d7\u6ce8/\u30ab\u30fc\u30c8\u660e\u7d30\u30fb\u304a\u6c17\u306b\u5165\u308a\u30b9\u30ca\u30c3\u30d7\u30b7\u30e7\u30c3\u30c8\u3067\u306f\u8ffd\u52a0\u6642\u70b9\u306e price02 \u3092\u30b9\u30ca\u30c3\u30d7\u30b7\u30e7\u30c3\u30c8\u3057\u3066\u4fdd\u6301\u3059\u308b\uff08\u5f8c\u306e\u5024\u5f15\u304d\u3084\u30de\u30b9\u30bf\u6539\u5b9a\u306b\u5f71\u97ff\u3055\u308c\u306a\u3044\uff09\u3002BeMart \u5074\u3067\u306f `int` \u5186\u6574\u6570 Fake\u89b3\u5bdf\u6570\u5024 1200\u301c9800; \u89b3\u5bdf\u5024 '1200', '9800'\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "adjustedQuantity": {
                        "title": "\u8abf\u6574\u5f8c\u6570\u91cf",
                        "description": "/cart/item \u306e\u51e6\u7406\u6587\u8108\u304b\u3089\u6d3e\u751f\u3057\u305f\u8abf\u6574\u5f8c\u6570\u91cf\u3002ALPS\u57fa\u790e\u8a9e\u3060\u3051\u3067\u306f\u5358\u4f4d\u3084\u7528\u9014\u304c\u4e0d\u8db3\u3059\u308b\u305f\u3081\u3001\u3053\u306eResource\u4e0a\u306e\u610f\u5473\u3092\u660e\u793a\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "deliveryFeeTotal": {
                        "title": "\u9001\u6599\u5408\u8a08",
                        "description": "\u5168\u914d\u9001\u5148\u306e\u9001\u6599\u5408\u8a08\uff08\u30b9\u30ca\u30c3\u30d7\u30b7\u30e7\u30c3\u30c8\uff09\u3002deliveryFeeAmount\uff08\u5730\u57df\u5225\u9001\u6599\uff09+ deliveryFee\uff08\u5546\u54c1\u5225\u9001\u6599\uff09\u00d7\u6570\u91cf \u306e\u5408\u8a08\u3002DeliveryFeePreprocessor\u3067\u8a08\u7b97\u3002\u30ab\u30fc\u30c8\u3068\u53d7\u6ce8\u306e\u4e21\u65b9\u3067\u4f7f\u7528 Fake\u89b3\u5bdf\u6570\u5024 0\u301c800; \u89b3\u5bdf\u5024 '600', '0', '500', '800', '700'\u3002",
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 600
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "cartKey",
                    "requestedQuantity",
                    "saleTypeName",
                    "productCode",
                    "totalPrice",
                    "unitPrice",
                    "adjustedQuantity",
                    "deliveryFeeTotal"
                ]
            },
            "PUT/cart/itemResponse": {
                "title": "PUT /cart/item response",
                "description": "PUT /cart/item response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b \u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u30ad\u30fc\u3002ALPS\u306ecartKey\u306f\u30bb\u30c3\u30b7\u30e7\u30f3\u63a5\u982d\u8f9e\u3068\u8ca9\u58f2\u7a2e\u5225ID\u304b\u3089\u69cb\u6210\u3055\u308c\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 18\u301c23; \u89b3\u5bdf\u5024 'session-prefix-1_1', 'session-prefix-1_2', 'session-checkout-pilot5'\u3002",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "requestedQuantity": {
                        "title": "\u8981\u6c42\u6570\u91cf",
                        "description": "/cart/item \u306e\u51e6\u7406\u6587\u8108\u304b\u3089\u6d3e\u751f\u3057\u305f\u8981\u6c42\u6570\u91cf\u3002ALPS\u57fa\u790e\u8a9e\u3060\u3051\u3067\u306f\u5358\u4f4d\u3084\u7528\u9014\u304c\u4e0d\u8db3\u3059\u308b\u305f\u3081\u3001\u3053\u306eResource\u4e0a\u306e\u610f\u5473\u3092\u660e\u793a\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "saleTypeName": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u8ca9\u58f2\u7a2e\u5225",
                        "description": "\u8ca9\u58f2\u7a2e\u5225\u306e\u540d\u79f0\u3002\u30ab\u30fc\u30c8\u5206\u96e2\u306e\u57fa\u6e96\u3068\u306a\u308b\u3002\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8(cartKey)\u306b\u5206\u96e2\u3055\u308c\u308b Fake\u89b3\u5bdf\u6587\u5b57\u9577 4\u301c8; \u89b3\u5bdf\u5024 '\u901a\u5e38\u8ca9\u58f2', '\u4e88\u7d04\u8ca9\u58f2', '\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u8ca9\u58f2'\u3002",
                        "example": "\u901a\u5e38\u8ca9\u58f2"
                    },
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 \u5546\u54c1\u3092\u8b58\u5225\u3059\u308bSKU\u3002Fake corpus\u3067\u306fASCII\u82f1\u6570\u30fb\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3067\u3001\u53d7\u6ce8\u660e\u7d30/\u30ab\u30fc\u30c8\u660e\u7d30\u306e\u7d50\u5408\u30ad\u30fc\u306b\u306a\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c26\u3002",
                        "type": "string",
                        "minLength": 0,
                        "maxLength": 64,
                        "example": "sample-001"
                    },
                    "totalPrice": {
                        "title": "\u30ab\u30fc\u30c8\u5408\u8a08\u91d1\u984d",
                        "description": "\u30ab\u30fc\u30c8\u5185\u306e\u7a0e\u8fbc\u5408\u8a08\u91d1\u984d\u3002PurchaseFlow.calculateTotal()\u3067\u6bce\u56de\u518d\u8a08\u7b97\u3055\u308c\u308b\u30ad\u30e3\u30c3\u30b7\u30e5\u5024\u3002\u53d7\u6ce8\u306etotal\u3068\u306f\u5225\u30d7\u30ed\u30d1\u30c6\u30a3 Fake\u89b3\u5bdf\u6570\u5024 0\u301c3600; \u89b3\u5bdf\u5024 '0', '1500', '3600'\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 0
                    },
                    "unitPrice": {
                        "title": "\u5358\u4fa1\uff08\u8868\u793a/\u8a08\u7b97\u7528\uff09",
                        "description": "\u660e\u7d301\u4ef6\u3042\u305f\u308a\u306e\u5358\u4fa1\u3002\u53d7\u6ce8/\u30ab\u30fc\u30c8\u660e\u7d30\u30fb\u304a\u6c17\u306b\u5165\u308a\u30b9\u30ca\u30c3\u30d7\u30b7\u30e7\u30c3\u30c8\u3067\u306f\u8ffd\u52a0\u6642\u70b9\u306e price02 \u3092\u30b9\u30ca\u30c3\u30d7\u30b7\u30e7\u30c3\u30c8\u3057\u3066\u4fdd\u6301\u3059\u308b\uff08\u5f8c\u306e\u5024\u5f15\u304d\u3084\u30de\u30b9\u30bf\u6539\u5b9a\u306b\u5f71\u97ff\u3055\u308c\u306a\u3044\uff09\u3002BeMart \u5074\u3067\u306f `int` \u5186\u6574\u6570 Fake\u89b3\u5bdf\u6570\u5024 1200\u301c9800; \u89b3\u5bdf\u5024 '1200', '9800'\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "adjustedQuantity": {
                        "title": "\u8abf\u6574\u5f8c\u6570\u91cf",
                        "description": "/cart/item \u306e\u51e6\u7406\u6587\u8108\u304b\u3089\u6d3e\u751f\u3057\u305f\u8abf\u6574\u5f8c\u6570\u91cf\u3002ALPS\u57fa\u790e\u8a9e\u3060\u3051\u3067\u306f\u5358\u4f4d\u3084\u7528\u9014\u304c\u4e0d\u8db3\u3059\u308b\u305f\u3081\u3001\u3053\u306eResource\u4e0a\u306e\u610f\u5473\u3092\u660e\u793a\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "deliveryFeeTotal": {
                        "title": "\u9001\u6599\u5408\u8a08",
                        "description": "\u5168\u914d\u9001\u5148\u306e\u9001\u6599\u5408\u8a08\uff08\u30b9\u30ca\u30c3\u30d7\u30b7\u30e7\u30c3\u30c8\uff09\u3002deliveryFeeAmount\uff08\u5730\u57df\u5225\u9001\u6599\uff09+ deliveryFee\uff08\u5546\u54c1\u5225\u9001\u6599\uff09\u00d7\u6570\u91cf \u306e\u5408\u8a08\u3002DeliveryFeePreprocessor\u3067\u8a08\u7b97\u3002\u30ab\u30fc\u30c8\u3068\u53d7\u6ce8\u306e\u4e21\u65b9\u3067\u4f7f\u7528 Fake\u89b3\u5bdf\u6570\u5024 0\u301c800; \u89b3\u5bdf\u5024 '600', '0', '500', '800', '700'\u3002",
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 600
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "cartKey",
                    "requestedQuantity",
                    "saleTypeName",
                    "productCode",
                    "totalPrice",
                    "unitPrice",
                    "adjustedQuantity",
                    "deliveryFeeTotal"
                ]
            },
            "DELETE/cart/itemResponse": {
                "title": "DELETE /cart/item response",
                "description": "DELETE /cart/item response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b \u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u30ad\u30fc\u3002ALPS\u306ecartKey\u306f\u30bb\u30c3\u30b7\u30e7\u30f3\u63a5\u982d\u8f9e\u3068\u8ca9\u58f2\u7a2e\u5225ID\u304b\u3089\u69cb\u6210\u3055\u308c\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 18\u301c23; \u89b3\u5bdf\u5024 'session-prefix-1_1', 'session-prefix-1_2', 'session-checkout-pilot5'\u3002",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 \u5546\u54c1\u3092\u8b58\u5225\u3059\u308bSKU\u3002Fake corpus\u3067\u306fASCII\u82f1\u6570\u30fb\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3067\u3001\u53d7\u6ce8\u660e\u7d30/\u30ab\u30fc\u30c8\u660e\u7d30\u306e\u7d50\u5408\u30ad\u30fc\u306b\u306a\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c26\u3002",
                        "type": "string",
                        "minLength": 0,
                        "maxLength": 64,
                        "example": "sample-001"
                    },
                    "totalPrice": {
                        "title": "\u30ab\u30fc\u30c8\u5408\u8a08\u91d1\u984d",
                        "description": "\u30ab\u30fc\u30c8\u5185\u306e\u7a0e\u8fbc\u5408\u8a08\u91d1\u984d\u3002PurchaseFlow.calculateTotal()\u3067\u6bce\u56de\u518d\u8a08\u7b97\u3055\u308c\u308b\u30ad\u30e3\u30c3\u30b7\u30e5\u5024\u3002\u53d7\u6ce8\u306etotal\u3068\u306f\u5225\u30d7\u30ed\u30d1\u30c6\u30a3 Fake\u89b3\u5bdf\u6570\u5024 0\u301c3600; \u89b3\u5bdf\u5024 '0', '1500', '3600'\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 0
                    },
                    "deliveryFeeTotal": {
                        "title": "\u9001\u6599\u5408\u8a08",
                        "description": "\u5168\u914d\u9001\u5148\u306e\u9001\u6599\u5408\u8a08\uff08\u30b9\u30ca\u30c3\u30d7\u30b7\u30e7\u30c3\u30c8\uff09\u3002deliveryFeeAmount\uff08\u5730\u57df\u5225\u9001\u6599\uff09+ deliveryFee\uff08\u5546\u54c1\u5225\u9001\u6599\uff09\u00d7\u6570\u91cf \u306e\u5408\u8a08\u3002DeliveryFeePreprocessor\u3067\u8a08\u7b97\u3002\u30ab\u30fc\u30c8\u3068\u53d7\u6ce8\u306e\u4e21\u65b9\u3067\u4f7f\u7528 Fake\u89b3\u5bdf\u6570\u5024 0\u301c800; \u89b3\u5bdf\u5024 '600', '0', '500', '800', '700'\u3002",
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 600
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "cartKey",
                    "productCode",
                    "totalPrice",
                    "deliveryFeeTotal"
                ]
            },
            "GET/contact/completeResponse": {
                "title": "GET /contact/complete response",
                "description": "GET /contact/complete response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "fields": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u9759\u7684\u8868\u793a\u30d5\u30a3\u30fc\u30eb\u30c9",
                        "description": "/contact/complete \u3067\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u3078\u6e21\u3059\u8868\u793a\u7528\u30d5\u30a3\u30fc\u30eb\u30c9\u96c6\u5408\u3002\u30d5\u30a9\u30fc\u30e0\u5165\u529b\u5024\u3067\u306f\u306a\u304f\u753b\u9762\u6587\u8108\u30c7\u30fc\u30bf\u3002",
                        "items": {
                            "type": "string",
                            "title": "\u8868\u793a\u30d5\u30a3\u30fc\u30eb\u30c9",
                            "minLength": 0,
                            "maxLength": 255,
                            "description": "/contact/complete \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u51e6\u7406\u884c\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `fields` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002"
                        }
                    },
                    "submitTo": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 255,
                        "title": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5148\u30ea\u30f3\u30af",
                        "description": "/contact/complete \u306e\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u306b\u4f7f\u3046\u9001\u4fe1\u5148\u30ea\u30f3\u30af\u3002HTTP\u30e1\u30bd\u30c3\u30c9\u3068\u9077\u79fb\u5148\u3092\u307e\u3068\u3081\u3001unsafe\u64cd\u4f5c\u306e\u5165\u53e3\u3092\u660e\u793a\u3059\u308b\u3002"
                    },
                    "staticContent": {
                        "type": [
                            "object",
                            "null"
                        ],
                        "title": "\u9759\u7684\u30b3\u30f3\u30c6\u30f3\u30c4",
                        "description": "/contact/complete \u3067\u8868\u793a\u3059\u308b\u898f\u7d04\u30fb\u30d8\u30eb\u30d7\u30fb\u30a8\u30e9\u30fc\u7b49\u306e\u9759\u7684\u30da\u30fc\u30b8\u672c\u6587\u3068\u30bb\u30af\u30b7\u30e7\u30f3\u60c5\u5831\u3002",
                        "properties": {
                            "title": {
                                "type": [
                                    "string",
                                    "null"
                                ],
                                "minLength": 0,
                                "maxLength": 255,
                                "title": "\u51e6\u7406\u30bf\u30a4\u30c8\u30eb",
                                "description": "/contact/complete \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8868\u793a\u307e\u305f\u306f\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u63cf\u753b\u306b\u4f7f\u3046\u51e6\u7406\u30bf\u30a4\u30c8\u30eb\u3002\u540c\u540dproperty\u3067\u3082\u89aa\u6587\u8108 `root` \u306b\u3088\u3063\u3066\u610f\u5473\u3092\u5206\u3051\u308b\u3002"
                            },
                            "page": {
                                "type": [
                                    "string",
                                    "null"
                                ],
                                "minLength": 0,
                                "maxLength": 255,
                                "title": "\u30da\u30fc\u30b8\u8b58\u5225\u5b50",
                                "description": "/contact/complete \u306e\u9759\u7684\u30b3\u30f3\u30c6\u30f3\u30c4\u3067\u8868\u793a\u5bfe\u8c61\u30da\u30fc\u30b8\u3092\u8b58\u5225\u3059\u308b\u5024\u3002\u30da\u30fc\u30b8\u756a\u53f7\u3067\u306f\u306a\u3044\u3002"
                            }
                        },
                        "additionalProperties": false,
                        "required": [
                            "title",
                            "page"
                        ]
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "\u3053\u306e\u30ec\u30b9\u30dd\u30f3\u30b9/\u64cd\u4f5c\u304c\u5bfe\u5fdc\u3059\u308bALPS\u9077\u79fbID\u3002\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u306e\u72b6\u614b\u9077\u79fb\u8ffd\u8de1\u306b\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "ticketId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u53d7\u4ed8\u756a\u53f7",
                        "description": "\u554f\u3044\u5408\u308f\u305b\u9001\u4fe1\u5f8c\u306b\u767a\u884c\u3055\u308c\u308b\u516c\u958b\u53d7\u4ed8\u756a\u53f7\u3002\u554f\u3044\u5408\u308f\u305b\u672c\u6587\u306e readback resource \u3067\u306f\u306a\u304f\u3001\u5b8c\u4e86\u72b6\u614b\u306e\u6210\u7acb\u8a3c\u62e0\u3068\u3057\u3066\u4f7f\u3046\u3002",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "transitionId",
                    "ticketId"
                ]
            },
            "GET/contact/confirmResponse": {
                "title": "GET /contact/confirm response",
                "description": "GET /contact/confirm response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "form": {
                        "type": [
                            "object",
                            "array",
                            "null"
                        ],
                        "title": "\u5165\u529b\u30d5\u30a9\u30fc\u30e0",
                        "description": "Aura/WebForm\u7531\u6765\u306e\u30d5\u30a9\u30fc\u30e0\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3002\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5185\u90e8\u69cb\u9020\u306e\u305f\u3081schema\u3067\u306f\u5b58\u5728\u3068\u578b\u306e\u307f\u3092\u5951\u7d04\u3059\u308b\u3002",
                        "$comment": "Aura/WebForm\u7531\u6765\u306e\u4e0d\u900f\u660e\u30d5\u30a9\u30fc\u30e0\u8868\u73fe\u3002Resource\u5883\u754c\u3067\u306f\u30d5\u30a9\u30fc\u30e0\u306e\u5b58\u5728\u3068\u30b3\u30f3\u30c6\u30ad\u30b9\u30c8\u3060\u3051\u3092\u5951\u7d04\u3057\u3001\u5185\u90e8\u69cb\u9020\u306f\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5883\u754c\u306b\u59d4\u306d\u308b\u305f\u3081\u8ffd\u52a0\u30ad\u30fc\u5236\u7d04\u3092\u7f6e\u304b\u306a\u3044\u3002"
                    },
                    "fields": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u9759\u7684\u8868\u793a\u30d5\u30a3\u30fc\u30eb\u30c9",
                        "description": "/contact/confirm \u3067\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u3078\u6e21\u3059\u8868\u793a\u7528\u30d5\u30a3\u30fc\u30eb\u30c9\u96c6\u5408\u3002\u30d5\u30a9\u30fc\u30e0\u5165\u529b\u5024\u3067\u306f\u306a\u304f\u753b\u9762\u6587\u8108\u30c7\u30fc\u30bf\u3002",
                        "items": {
                            "type": "string",
                            "title": "\u8868\u793a\u30d5\u30a3\u30fc\u30eb\u30c9",
                            "minLength": 0,
                            "maxLength": 255,
                            "description": "/contact/confirm \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u51e6\u7406\u884c\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `fields` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002"
                        }
                    },
                    "submitTo": {
                        "type": [
                            "object",
                            "null"
                        ],
                        "title": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5148\u30ea\u30f3\u30af",
                        "description": "/contact/confirm \u306e\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u306b\u4f7f\u3046\u9001\u4fe1\u5148\u30ea\u30f3\u30af\u3002HTTP\u30e1\u30bd\u30c3\u30c9\u3068\u9077\u79fb\u5148\u3092\u307e\u3068\u3081\u3001unsafe\u64cd\u4f5c\u306e\u5165\u53e3\u3092\u660e\u793a\u3059\u308b\u3002",
                        "properties": {
                            "href": {
                                "title": "\u30ea\u30f3\u30afURI\u53c2\u7167\uff08URI\u53c2\u7167\uff09",
                                "description": "\u30da\u30fc\u30b8\u306eURL\u30d1\u30b9\uff08Symfony\u30eb\u30fc\u30c8\u540d\u3002\u4f8b: homepage, product_list\uff09",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "method": {
                                "type": [
                                    "string",
                                    "null"
                                ],
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ],
                                "title": "HTTP\u30e1\u30bd\u30c3\u30c9",
                                "description": "/contact/confirm \u306e\u30ea\u30f3\u30af\u307e\u305f\u306f\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u3067\u4f7f\u3046HTTP\u30e1\u30bd\u30c3\u30c9\u3002GET/POST\u7b49\u306e\u9077\u79fb\u65b9\u6cd5\u3092\u8868\u3059\u3002"
                            }
                        },
                        "additionalProperties": false,
                        "required": [
                            "href",
                            "method"
                        ]
                    },
                    "staticContent": {
                        "type": [
                            "object",
                            "null"
                        ],
                        "title": "\u9759\u7684\u30b3\u30f3\u30c6\u30f3\u30c4",
                        "description": "/contact/confirm \u3067\u8868\u793a\u3059\u308b\u898f\u7d04\u30fb\u30d8\u30eb\u30d7\u30fb\u30a8\u30e9\u30fc\u7b49\u306e\u9759\u7684\u30da\u30fc\u30b8\u672c\u6587\u3068\u30bb\u30af\u30b7\u30e7\u30f3\u60c5\u5831\u3002",
                        "properties": {
                            "title": {
                                "type": [
                                    "string",
                                    "null"
                                ],
                                "minLength": 0,
                                "maxLength": 255,
                                "title": "\u51e6\u7406\u30bf\u30a4\u30c8\u30eb",
                                "description": "/contact/confirm \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8868\u793a\u307e\u305f\u306f\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u63cf\u753b\u306b\u4f7f\u3046\u51e6\u7406\u30bf\u30a4\u30c8\u30eb\u3002\u540c\u540dproperty\u3067\u3082\u89aa\u6587\u8108 `root` \u306b\u3088\u3063\u3066\u610f\u5473\u3092\u5206\u3051\u308b\u3002"
                            },
                            "page": {
                                "type": [
                                    "string",
                                    "null"
                                ],
                                "minLength": 0,
                                "maxLength": 255,
                                "title": "\u30da\u30fc\u30b8\u8b58\u5225\u5b50",
                                "description": "/contact/confirm \u306e\u9759\u7684\u30b3\u30f3\u30c6\u30f3\u30c4\u3067\u8868\u793a\u5bfe\u8c61\u30da\u30fc\u30b8\u3092\u8b58\u5225\u3059\u308b\u5024\u3002\u30da\u30fc\u30b8\u756a\u53f7\u3067\u306f\u306a\u3044\u3002"
                            }
                        },
                        "additionalProperties": false,
                        "required": [
                            "title",
                            "page"
                        ]
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "\u3053\u306e\u30ec\u30b9\u30dd\u30f3\u30b9/\u64cd\u4f5c\u304c\u5bfe\u5fdc\u3059\u308bALPS\u9077\u79fbID\u3002\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u306e\u72b6\u614b\u9077\u79fb\u8ffd\u8de1\u306b\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "transitionId",
                    "csrfToken"
                ]
            },
            "GET/entry/activateResponse": {
                "title": "GET /entry/activate response",
                "description": "GET /entry/activate response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "fields": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u9759\u7684\u8868\u793a\u30d5\u30a3\u30fc\u30eb\u30c9",
                        "description": "/entry/activate \u3067\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u3078\u6e21\u3059\u8868\u793a\u7528\u30d5\u30a3\u30fc\u30eb\u30c9\u96c6\u5408\u3002\u30d5\u30a9\u30fc\u30e0\u5165\u529b\u5024\u3067\u306f\u306a\u304f\u753b\u9762\u6587\u8108\u30c7\u30fc\u30bf\u3002",
                        "items": {
                            "type": "string",
                            "title": "\u8868\u793a\u30d5\u30a3\u30fc\u30eb\u30c9",
                            "minLength": 0,
                            "maxLength": 255,
                            "description": "/entry/activate \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u4f1a\u54e1\u884c\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `fields` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002"
                        }
                    },
                    "submitTo": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 255,
                        "title": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5148\u30ea\u30f3\u30af",
                        "description": "/entry/activate \u306e\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u306b\u4f7f\u3046\u9001\u4fe1\u5148\u30ea\u30f3\u30af\u3002HTTP\u30e1\u30bd\u30c3\u30c9\u3068\u9077\u79fb\u5148\u3092\u307e\u3068\u3081\u3001unsafe\u64cd\u4f5c\u306e\u5165\u53e3\u3092\u660e\u793a\u3059\u308b\u3002"
                    },
                    "staticContent": {
                        "type": [
                            "object",
                            "null"
                        ],
                        "title": "\u9759\u7684\u30b3\u30f3\u30c6\u30f3\u30c4",
                        "description": "/entry/activate \u3067\u8868\u793a\u3059\u308b\u898f\u7d04\u30fb\u30d8\u30eb\u30d7\u30fb\u30a8\u30e9\u30fc\u7b49\u306e\u9759\u7684\u30da\u30fc\u30b8\u672c\u6587\u3068\u30bb\u30af\u30b7\u30e7\u30f3\u60c5\u5831\u3002",
                        "properties": {
                            "title": {
                                "type": [
                                    "string",
                                    "null"
                                ],
                                "minLength": 0,
                                "maxLength": 255,
                                "title": "\u51e6\u7406\u30bf\u30a4\u30c8\u30eb",
                                "description": "/entry/activate \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8868\u793a\u307e\u305f\u306f\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u63cf\u753b\u306b\u4f7f\u3046\u51e6\u7406\u30bf\u30a4\u30c8\u30eb\u3002\u540c\u540dproperty\u3067\u3082\u89aa\u6587\u8108 `root` \u306b\u3088\u3063\u3066\u610f\u5473\u3092\u5206\u3051\u308b\u3002"
                            },
                            "page": {
                                "type": [
                                    "string",
                                    "null"
                                ],
                                "minLength": 0,
                                "maxLength": 255,
                                "title": "\u30da\u30fc\u30b8\u8b58\u5225\u5b50",
                                "description": "/entry/activate \u306e\u9759\u7684\u30b3\u30f3\u30c6\u30f3\u30c4\u3067\u8868\u793a\u5bfe\u8c61\u30da\u30fc\u30b8\u3092\u8b58\u5225\u3059\u308b\u5024\u3002\u30da\u30fc\u30b8\u756a\u53f7\u3067\u306f\u306a\u3044\u3002"
                            }
                        },
                        "additionalProperties": false,
                        "required": [
                            "title",
                            "page"
                        ]
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "\u3053\u306e\u30ec\u30b9\u30dd\u30f3\u30b9/\u64cd\u4f5c\u304c\u5bfe\u5fdc\u3059\u308bALPS\u9077\u79fbID\u3002\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u306e\u72b6\u614b\u9077\u79fb\u8ffd\u8de1\u306b\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "transitionId"
                ]
            },
            "POST/entry/activateResponse": {
                "title": "POST /entry/activate response",
                "description": "POST /entry/activate response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "message": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u4f1a\u54e1\u30e1\u30c3\u30bb\u30fc\u30b8",
                        "description": "/entry/activate \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u51e6\u7406\u7d50\u679c\u30e1\u30c3\u30bb\u30fc\u30b8\u3002\u6ce8\u6587\u6642\u304a\u554f\u3044\u5408\u308f\u305b\u6b04\u3067\u306f\u306a\u304f\u3001\u753b\u9762\u9077\u79fb\u3084\u5b8c\u4e86\u8868\u793a\u306e\u305f\u3081\u306e\u901a\u77e5\u6587\u3002",
                        "example": "\u914d\u9001\u306f\u5e73\u65e5\u5e0c\u671b\u3067\u3059\u3002"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape."
            },
            "GET/entry/completeResponse": {
                "title": "GET /entry/complete response",
                "description": "GET /entry/complete response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "fields": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u9759\u7684\u8868\u793a\u30d5\u30a3\u30fc\u30eb\u30c9",
                        "description": "/entry/complete \u3067\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u3078\u6e21\u3059\u8868\u793a\u7528\u30d5\u30a3\u30fc\u30eb\u30c9\u96c6\u5408\u3002\u30d5\u30a9\u30fc\u30e0\u5165\u529b\u5024\u3067\u306f\u306a\u304f\u753b\u9762\u6587\u8108\u30c7\u30fc\u30bf\u3002",
                        "items": {
                            "type": "string",
                            "title": "\u8868\u793a\u30d5\u30a3\u30fc\u30eb\u30c9",
                            "minLength": 0,
                            "maxLength": 255,
                            "description": "/entry/complete \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u4f1a\u54e1\u884c\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `fields` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002"
                        }
                    },
                    "submitTo": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 255,
                        "title": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5148\u30ea\u30f3\u30af",
                        "description": "/entry/complete \u306e\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u306b\u4f7f\u3046\u9001\u4fe1\u5148\u30ea\u30f3\u30af\u3002HTTP\u30e1\u30bd\u30c3\u30c9\u3068\u9077\u79fb\u5148\u3092\u307e\u3068\u3081\u3001unsafe\u64cd\u4f5c\u306e\u5165\u53e3\u3092\u660e\u793a\u3059\u308b\u3002"
                    },
                    "staticContent": {
                        "type": [
                            "object",
                            "null"
                        ],
                        "title": "\u9759\u7684\u30b3\u30f3\u30c6\u30f3\u30c4",
                        "description": "/entry/complete \u3067\u8868\u793a\u3059\u308b\u898f\u7d04\u30fb\u30d8\u30eb\u30d7\u30fb\u30a8\u30e9\u30fc\u7b49\u306e\u9759\u7684\u30da\u30fc\u30b8\u672c\u6587\u3068\u30bb\u30af\u30b7\u30e7\u30f3\u60c5\u5831\u3002",
                        "properties": {
                            "title": {
                                "type": [
                                    "string",
                                    "null"
                                ],
                                "minLength": 0,
                                "maxLength": 255,
                                "title": "\u51e6\u7406\u30bf\u30a4\u30c8\u30eb",
                                "description": "/entry/complete \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8868\u793a\u307e\u305f\u306f\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u63cf\u753b\u306b\u4f7f\u3046\u51e6\u7406\u30bf\u30a4\u30c8\u30eb\u3002\u540c\u540dproperty\u3067\u3082\u89aa\u6587\u8108 `root` \u306b\u3088\u3063\u3066\u610f\u5473\u3092\u5206\u3051\u308b\u3002"
                            },
                            "page": {
                                "type": [
                                    "string",
                                    "null"
                                ],
                                "minLength": 0,
                                "maxLength": 255,
                                "title": "\u30da\u30fc\u30b8\u8b58\u5225\u5b50",
                                "description": "/entry/complete \u306e\u9759\u7684\u30b3\u30f3\u30c6\u30f3\u30c4\u3067\u8868\u793a\u5bfe\u8c61\u30da\u30fc\u30b8\u3092\u8b58\u5225\u3059\u308b\u5024\u3002\u30da\u30fc\u30b8\u756a\u53f7\u3067\u306f\u306a\u3044\u3002"
                            }
                        },
                        "additionalProperties": false,
                        "required": [
                            "title",
                            "page"
                        ]
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "\u3053\u306e\u30ec\u30b9\u30dd\u30f3\u30b9/\u64cd\u4f5c\u304c\u5bfe\u5fdc\u3059\u308bALPS\u9077\u79fbID\u3002\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u306e\u72b6\u614b\u9077\u79fb\u8ffd\u8de1\u306b\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "transitionId"
                ]
            },
            "GET/entry/confirmResponse": {
                "title": "GET /entry/confirm response",
                "description": "GET /entry/confirm response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "form": {
                        "type": [
                            "object",
                            "array",
                            "null"
                        ],
                        "title": "\u5165\u529b\u30d5\u30a9\u30fc\u30e0",
                        "description": "Aura/WebForm\u7531\u6765\u306e\u30d5\u30a9\u30fc\u30e0\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3002\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5185\u90e8\u69cb\u9020\u306e\u305f\u3081schema\u3067\u306f\u5b58\u5728\u3068\u578b\u306e\u307f\u3092\u5951\u7d04\u3059\u308b\u3002",
                        "$comment": "Aura/WebForm\u7531\u6765\u306e\u4e0d\u900f\u660e\u30d5\u30a9\u30fc\u30e0\u8868\u73fe\u3002Resource\u5883\u754c\u3067\u306f\u30d5\u30a9\u30fc\u30e0\u306e\u5b58\u5728\u3068\u30b3\u30f3\u30c6\u30ad\u30b9\u30c8\u3060\u3051\u3092\u5951\u7d04\u3057\u3001\u5185\u90e8\u69cb\u9020\u306f\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5883\u754c\u306b\u59d4\u306d\u308b\u305f\u3081\u8ffd\u52a0\u30ad\u30fc\u5236\u7d04\u3092\u7f6e\u304b\u306a\u3044\u3002"
                    },
                    "fields": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u9759\u7684\u8868\u793a\u30d5\u30a3\u30fc\u30eb\u30c9",
                        "description": "/entry/confirm \u3067\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u3078\u6e21\u3059\u8868\u793a\u7528\u30d5\u30a3\u30fc\u30eb\u30c9\u96c6\u5408\u3002\u30d5\u30a9\u30fc\u30e0\u5165\u529b\u5024\u3067\u306f\u306a\u304f\u753b\u9762\u6587\u8108\u30c7\u30fc\u30bf\u3002",
                        "items": {
                            "type": "string",
                            "title": "\u8868\u793a\u30d5\u30a3\u30fc\u30eb\u30c9",
                            "minLength": 0,
                            "maxLength": 255,
                            "description": "/entry/confirm \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u4f1a\u54e1\u884c\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `fields` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002"
                        }
                    },
                    "submitTo": {
                        "type": [
                            "object",
                            "null"
                        ],
                        "title": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5148\u30ea\u30f3\u30af",
                        "description": "/entry/confirm \u306e\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u306b\u4f7f\u3046\u9001\u4fe1\u5148\u30ea\u30f3\u30af\u3002HTTP\u30e1\u30bd\u30c3\u30c9\u3068\u9077\u79fb\u5148\u3092\u307e\u3068\u3081\u3001unsafe\u64cd\u4f5c\u306e\u5165\u53e3\u3092\u660e\u793a\u3059\u308b\u3002",
                        "properties": {
                            "href": {
                                "title": "\u30ea\u30f3\u30afURI\u53c2\u7167\uff08URI\u53c2\u7167\uff09",
                                "description": "\u30da\u30fc\u30b8\u306eURL\u30d1\u30b9\uff08Symfony\u30eb\u30fc\u30c8\u540d\u3002\u4f8b: homepage, product_list\uff09",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "method": {
                                "type": [
                                    "string",
                                    "null"
                                ],
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ],
                                "title": "HTTP\u30e1\u30bd\u30c3\u30c9",
                                "description": "/entry/confirm \u306e\u30ea\u30f3\u30af\u307e\u305f\u306f\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u3067\u4f7f\u3046HTTP\u30e1\u30bd\u30c3\u30c9\u3002GET/POST\u7b49\u306e\u9077\u79fb\u65b9\u6cd5\u3092\u8868\u3059\u3002"
                            }
                        },
                        "additionalProperties": false,
                        "required": [
                            "href",
                            "method"
                        ]
                    },
                    "staticContent": {
                        "type": [
                            "object",
                            "null"
                        ],
                        "title": "\u9759\u7684\u30b3\u30f3\u30c6\u30f3\u30c4",
                        "description": "/entry/confirm \u3067\u8868\u793a\u3059\u308b\u898f\u7d04\u30fb\u30d8\u30eb\u30d7\u30fb\u30a8\u30e9\u30fc\u7b49\u306e\u9759\u7684\u30da\u30fc\u30b8\u672c\u6587\u3068\u30bb\u30af\u30b7\u30e7\u30f3\u60c5\u5831\u3002",
                        "properties": {
                            "title": {
                                "type": [
                                    "string",
                                    "null"
                                ],
                                "minLength": 0,
                                "maxLength": 255,
                                "title": "\u51e6\u7406\u30bf\u30a4\u30c8\u30eb",
                                "description": "/entry/confirm \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8868\u793a\u307e\u305f\u306f\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u63cf\u753b\u306b\u4f7f\u3046\u51e6\u7406\u30bf\u30a4\u30c8\u30eb\u3002\u540c\u540dproperty\u3067\u3082\u89aa\u6587\u8108 `root` \u306b\u3088\u3063\u3066\u610f\u5473\u3092\u5206\u3051\u308b\u3002"
                            },
                            "page": {
                                "type": [
                                    "string",
                                    "null"
                                ],
                                "minLength": 0,
                                "maxLength": 255,
                                "title": "\u30da\u30fc\u30b8\u8b58\u5225\u5b50",
                                "description": "/entry/confirm \u306e\u9759\u7684\u30b3\u30f3\u30c6\u30f3\u30c4\u3067\u8868\u793a\u5bfe\u8c61\u30da\u30fc\u30b8\u3092\u8b58\u5225\u3059\u308b\u5024\u3002\u30da\u30fc\u30b8\u756a\u53f7\u3067\u306f\u306a\u3044\u3002"
                            }
                        },
                        "additionalProperties": false,
                        "required": [
                            "title",
                            "page"
                        ]
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "\u3053\u306e\u30ec\u30b9\u30dd\u30f3\u30b9/\u64cd\u4f5c\u304c\u5bfe\u5fdc\u3059\u308bALPS\u9077\u79fbID\u3002\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u306e\u72b6\u614b\u9077\u79fb\u8ffd\u8de1\u306b\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "transitionId",
                    "csrfToken"
                ]
            },
            "GET/help/aboutResponse": {
                "title": "GET /help/about response",
                "description": "GET /help/about response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "fields": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u9759\u7684\u8868\u793a\u30d5\u30a3\u30fc\u30eb\u30c9",
                        "description": "/help/about \u3067\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u3078\u6e21\u3059\u8868\u793a\u7528\u30d5\u30a3\u30fc\u30eb\u30c9\u96c6\u5408\u3002\u30d5\u30a9\u30fc\u30e0\u5165\u529b\u5024\u3067\u306f\u306a\u304f\u753b\u9762\u6587\u8108\u30c7\u30fc\u30bf\u3002",
                        "items": {
                            "type": "string",
                            "title": "\u8868\u793a\u30d5\u30a3\u30fc\u30eb\u30c9",
                            "minLength": 0,
                            "maxLength": 255,
                            "description": "/help/about \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u51e6\u7406\u884c\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `fields` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002"
                        }
                    },
                    "submitTo": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 255,
                        "title": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5148\u30ea\u30f3\u30af",
                        "description": "/help/about \u306e\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u306b\u4f7f\u3046\u9001\u4fe1\u5148\u30ea\u30f3\u30af\u3002HTTP\u30e1\u30bd\u30c3\u30c9\u3068\u9077\u79fb\u5148\u3092\u307e\u3068\u3081\u3001unsafe\u64cd\u4f5c\u306e\u5165\u53e3\u3092\u660e\u793a\u3059\u308b\u3002"
                    },
                    "staticContent": {
                        "type": [
                            "object",
                            "null"
                        ],
                        "title": "\u9759\u7684\u30b3\u30f3\u30c6\u30f3\u30c4",
                        "description": "/help/about \u3067\u8868\u793a\u3059\u308b\u898f\u7d04\u30fb\u30d8\u30eb\u30d7\u30fb\u30a8\u30e9\u30fc\u7b49\u306e\u9759\u7684\u30da\u30fc\u30b8\u672c\u6587\u3068\u30bb\u30af\u30b7\u30e7\u30f3\u60c5\u5831\u3002",
                        "properties": {
                            "page": {
                                "type": [
                                    "string",
                                    "null"
                                ],
                                "minLength": 0,
                                "maxLength": 255,
                                "title": "\u30da\u30fc\u30b8\u8b58\u5225\u5b50",
                                "description": "/help/about \u306e\u9759\u7684\u30b3\u30f3\u30c6\u30f3\u30c4\u3067\u8868\u793a\u5bfe\u8c61\u30da\u30fc\u30b8\u3092\u8b58\u5225\u3059\u308b\u5024\u3002\u30da\u30fc\u30b8\u756a\u53f7\u3067\u306f\u306a\u3044\u3002"
                            },
                            "sections": {
                                "type": [
                                    "array",
                                    "null"
                                ],
                                "title": "\u9759\u7684\u30b3\u30f3\u30c6\u30f3\u30c4\u30bb\u30af\u30b7\u30e7\u30f3\u4e00\u89a7",
                                "description": "/help/about \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u9759\u7684\u30b3\u30f3\u30c6\u30f3\u30c4\u30bb\u30af\u30b7\u30e7\u30f3\u4e00\u89a7\u3002\u914d\u5217\u8981\u7d20\u306fALPS\u610f\u5473\u3068Fake\u89b3\u5bdf\u306b\u57fa\u3065\u304d\u3001\u56fa\u5b9a\u3067\u304d\u306a\u3044\u52d5\u7684\u5217\u306f\u4f8b\u5916\u7406\u7531\u3092\u53f0\u5e33\u5316\u3059\u308b\u3002",
                                "items": {
                                    "type": "object",
                                    "title": "\u9759\u7684\u30b3\u30f3\u30c6\u30f3\u30c4\u30bb\u30af\u30b7\u30e7\u30f3",
                                    "description": "/help/about \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u9759\u7684\u30b3\u30f3\u30c6\u30f3\u30c4\u30bb\u30af\u30b7\u30e7\u30f3\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `sections` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002",
                                    "properties": {
                                        "title": {
                                            "type": [
                                                "string",
                                                "null"
                                            ],
                                            "minLength": 0,
                                            "maxLength": 255,
                                            "title": "\u51e6\u7406\u30bf\u30a4\u30c8\u30eb",
                                            "description": "/help/about \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8868\u793a\u307e\u305f\u306f\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u63cf\u753b\u306b\u4f7f\u3046\u51e6\u7406\u30bf\u30a4\u30c8\u30eb\u3002\u540c\u540dproperty\u3067\u3082\u89aa\u6587\u8108 `root` \u306b\u3088\u3063\u3066\u610f\u5473\u3092\u5206\u3051\u308b\u3002"
                                        },
                                        "body": {
                                            "type": [
                                                "string",
                                                "null"
                                            ],
                                            "minLength": 0,
                                            "maxLength": 128,
                                            "title": "\u672c\u6587",
                                            "description": "Fake\u89b3\u5bdf\u6587\u5b57\u9577 53\u301c53; \u89b3\u5bdf\u5024 '\u8ca9\u58f2\u696d\u8005: \u682a\u5f0f\u4f1a\u793eEC-CUBE\\n\u6240\u5728\u5730: \u5927\u962a\u5e02\u5317\u533a\u6885\u75301-1-1\\n\u9023\u7d61\u5148: 06-1234-5678'\u3002",
                                            "example": "\u8ca9\u58f2\u696d\u8005: \u682a\u5f0f\u4f1a\u793eEC-CUBE\n\u6240\u5728\u5730: \u5927\u962a\u5e02\u5317\u533a\u6885\u75301-1-1\n\u9023\u7d61\u5148: 06-1234-5678"
                                        },
                                        "content": {
                                            "type": [
                                                "string",
                                                "null"
                                            ],
                                            "minLength": 0,
                                            "maxLength": 255,
                                            "title": "\u672c\u6587",
                                            "description": "/help/about \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8868\u793a\u307e\u305f\u306f\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u63cf\u753b\u306b\u4f7f\u3046\u672c\u6587\u3002\u540c\u540dproperty\u3067\u3082\u89aa\u6587\u8108 `root` \u306b\u3088\u3063\u3066\u610f\u5473\u3092\u5206\u3051\u308b\u3002"
                                        }
                                    },
                                    "additionalProperties": false,
                                    "$comment": "\u914d\u5217\u8981\u7d20\u306fFake/Resource\u3067\u89b3\u5bdf\u3055\u308c\u305f\u65e2\u77e5property\u306b\u56fa\u5b9a\u3059\u308b\u3002\u65b0\u3057\u3044\u5217\u304c\u5fc5\u8981\u306b\u306a\u3063\u305f\u5834\u5408\u306fSemantic-Ex\u89b3\u5bdf\u306b\u8ffd\u52a0\u3057\u3066schema\u3092\u66f4\u65b0\u3059\u308b\u3002"
                                },
                                "minItems": 0
                            },
                            "title": {
                                "type": [
                                    "string",
                                    "null"
                                ],
                                "minLength": 0,
                                "maxLength": 255,
                                "title": "\u51e6\u7406\u30bf\u30a4\u30c8\u30eb",
                                "description": "/help/about \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8868\u793a\u307e\u305f\u306f\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u63cf\u753b\u306b\u4f7f\u3046\u51e6\u7406\u30bf\u30a4\u30c8\u30eb\u3002\u540c\u540dproperty\u3067\u3082\u89aa\u6587\u8108 `root` \u306b\u3088\u3063\u3066\u610f\u5473\u3092\u5206\u3051\u308b\u3002"
                            }
                        },
                        "additionalProperties": false,
                        "required": [
                            "page",
                            "sections",
                            "title"
                        ]
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "\u3053\u306e\u30ec\u30b9\u30dd\u30f3\u30b9/\u64cd\u4f5c\u304c\u5bfe\u5fdc\u3059\u308bALPS\u9077\u79fbID\u3002\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u306e\u72b6\u614b\u9077\u79fb\u8ffd\u8de1\u306b\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "transitionId"
                ]
            },
            "GET/help/agreementResponse": {
                "title": "GET /help/agreement response",
                "description": "GET /help/agreement response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "fields": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u9759\u7684\u8868\u793a\u30d5\u30a3\u30fc\u30eb\u30c9",
                        "description": "/help/agreement \u3067\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u3078\u6e21\u3059\u8868\u793a\u7528\u30d5\u30a3\u30fc\u30eb\u30c9\u96c6\u5408\u3002\u30d5\u30a9\u30fc\u30e0\u5165\u529b\u5024\u3067\u306f\u306a\u304f\u753b\u9762\u6587\u8108\u30c7\u30fc\u30bf\u3002",
                        "items": {
                            "type": "string",
                            "title": "\u8868\u793a\u30d5\u30a3\u30fc\u30eb\u30c9",
                            "minLength": 0,
                            "maxLength": 255,
                            "description": "/help/agreement \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u51e6\u7406\u884c\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `fields` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002"
                        }
                    },
                    "submitTo": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 255,
                        "title": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5148\u30ea\u30f3\u30af",
                        "description": "/help/agreement \u306e\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u306b\u4f7f\u3046\u9001\u4fe1\u5148\u30ea\u30f3\u30af\u3002HTTP\u30e1\u30bd\u30c3\u30c9\u3068\u9077\u79fb\u5148\u3092\u307e\u3068\u3081\u3001unsafe\u64cd\u4f5c\u306e\u5165\u53e3\u3092\u660e\u793a\u3059\u308b\u3002"
                    },
                    "staticContent": {
                        "type": [
                            "object",
                            "null"
                        ],
                        "title": "\u9759\u7684\u30b3\u30f3\u30c6\u30f3\u30c4",
                        "description": "/help/agreement \u3067\u8868\u793a\u3059\u308b\u898f\u7d04\u30fb\u30d8\u30eb\u30d7\u30fb\u30a8\u30e9\u30fc\u7b49\u306e\u9759\u7684\u30da\u30fc\u30b8\u672c\u6587\u3068\u30bb\u30af\u30b7\u30e7\u30f3\u60c5\u5831\u3002",
                        "properties": {
                            "page": {
                                "type": [
                                    "string",
                                    "null"
                                ],
                                "minLength": 0,
                                "maxLength": 255,
                                "title": "\u30da\u30fc\u30b8\u8b58\u5225\u5b50",
                                "description": "/help/agreement \u306e\u9759\u7684\u30b3\u30f3\u30c6\u30f3\u30c4\u3067\u8868\u793a\u5bfe\u8c61\u30da\u30fc\u30b8\u3092\u8b58\u5225\u3059\u308b\u5024\u3002\u30da\u30fc\u30b8\u756a\u53f7\u3067\u306f\u306a\u3044\u3002"
                            },
                            "sections": {
                                "type": [
                                    "array",
                                    "null"
                                ],
                                "title": "\u9759\u7684\u30b3\u30f3\u30c6\u30f3\u30c4\u30bb\u30af\u30b7\u30e7\u30f3\u4e00\u89a7",
                                "description": "/help/agreement \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u9759\u7684\u30b3\u30f3\u30c6\u30f3\u30c4\u30bb\u30af\u30b7\u30e7\u30f3\u4e00\u89a7\u3002\u914d\u5217\u8981\u7d20\u306fALPS\u610f\u5473\u3068Fake\u89b3\u5bdf\u306b\u57fa\u3065\u304d\u3001\u56fa\u5b9a\u3067\u304d\u306a\u3044\u52d5\u7684\u5217\u306f\u4f8b\u5916\u7406\u7531\u3092\u53f0\u5e33\u5316\u3059\u308b\u3002",
                                "items": {
                                    "type": "object",
                                    "title": "\u9759\u7684\u30b3\u30f3\u30c6\u30f3\u30c4\u30bb\u30af\u30b7\u30e7\u30f3",
                                    "description": "/help/agreement \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u9759\u7684\u30b3\u30f3\u30c6\u30f3\u30c4\u30bb\u30af\u30b7\u30e7\u30f3\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `sections` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002",
                                    "properties": {
                                        "title": {
                                            "type": [
                                                "string",
                                                "null"
                                            ],
                                            "minLength": 0,
                                            "maxLength": 255,
                                            "title": "\u51e6\u7406\u30bf\u30a4\u30c8\u30eb",
                                            "description": "/help/agreement \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8868\u793a\u307e\u305f\u306f\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u63cf\u753b\u306b\u4f7f\u3046\u51e6\u7406\u30bf\u30a4\u30c8\u30eb\u3002\u540c\u540dproperty\u3067\u3082\u89aa\u6587\u8108 `root` \u306b\u3088\u3063\u3066\u610f\u5473\u3092\u5206\u3051\u308b\u3002"
                                        },
                                        "body": {
                                            "type": [
                                                "string",
                                                "null"
                                            ],
                                            "minLength": 0,
                                            "maxLength": 128,
                                            "title": "\u672c\u6587",
                                            "description": "Fake\u89b3\u5bdf\u6587\u5b57\u9577 53\u301c53; \u89b3\u5bdf\u5024 '\u8ca9\u58f2\u696d\u8005: \u682a\u5f0f\u4f1a\u793eEC-CUBE\\n\u6240\u5728\u5730: \u5927\u962a\u5e02\u5317\u533a\u6885\u75301-1-1\\n\u9023\u7d61\u5148: 06-1234-5678'\u3002",
                                            "example": "\u8ca9\u58f2\u696d\u8005: \u682a\u5f0f\u4f1a\u793eEC-CUBE\n\u6240\u5728\u5730: \u5927\u962a\u5e02\u5317\u533a\u6885\u75301-1-1\n\u9023\u7d61\u5148: 06-1234-5678"
                                        },
                                        "content": {
                                            "type": [
                                                "string",
                                                "null"
                                            ],
                                            "minLength": 0,
                                            "maxLength": 255,
                                            "title": "\u672c\u6587",
                                            "description": "/help/agreement \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8868\u793a\u307e\u305f\u306f\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u63cf\u753b\u306b\u4f7f\u3046\u672c\u6587\u3002\u540c\u540dproperty\u3067\u3082\u89aa\u6587\u8108 `root` \u306b\u3088\u3063\u3066\u610f\u5473\u3092\u5206\u3051\u308b\u3002"
                                        }
                                    },
                                    "additionalProperties": false,
                                    "$comment": "\u914d\u5217\u8981\u7d20\u306fFake/Resource\u3067\u89b3\u5bdf\u3055\u308c\u305f\u65e2\u77e5property\u306b\u56fa\u5b9a\u3059\u308b\u3002\u65b0\u3057\u3044\u5217\u304c\u5fc5\u8981\u306b\u306a\u3063\u305f\u5834\u5408\u306fSemantic-Ex\u89b3\u5bdf\u306b\u8ffd\u52a0\u3057\u3066schema\u3092\u66f4\u65b0\u3059\u308b\u3002"
                                },
                                "minItems": 0
                            },
                            "title": {
                                "type": [
                                    "string",
                                    "null"
                                ],
                                "minLength": 0,
                                "maxLength": 255,
                                "title": "\u51e6\u7406\u30bf\u30a4\u30c8\u30eb",
                                "description": "/help/agreement \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8868\u793a\u307e\u305f\u306f\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u63cf\u753b\u306b\u4f7f\u3046\u51e6\u7406\u30bf\u30a4\u30c8\u30eb\u3002\u540c\u540dproperty\u3067\u3082\u89aa\u6587\u8108 `root` \u306b\u3088\u3063\u3066\u610f\u5473\u3092\u5206\u3051\u308b\u3002"
                            }
                        },
                        "additionalProperties": false,
                        "required": [
                            "page",
                            "sections",
                            "title"
                        ]
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "\u3053\u306e\u30ec\u30b9\u30dd\u30f3\u30b9/\u64cd\u4f5c\u304c\u5bfe\u5fdc\u3059\u308bALPS\u9077\u79fbID\u3002\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u306e\u72b6\u614b\u9077\u79fb\u8ffd\u8de1\u306b\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "transitionId"
                ]
            },
            "GET/help/guideResponse": {
                "title": "GET /help/guide response",
                "description": "GET /help/guide response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "fields": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u9759\u7684\u8868\u793a\u30d5\u30a3\u30fc\u30eb\u30c9",
                        "description": "/help/guide \u3067\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u3078\u6e21\u3059\u8868\u793a\u7528\u30d5\u30a3\u30fc\u30eb\u30c9\u96c6\u5408\u3002\u30d5\u30a9\u30fc\u30e0\u5165\u529b\u5024\u3067\u306f\u306a\u304f\u753b\u9762\u6587\u8108\u30c7\u30fc\u30bf\u3002",
                        "items": {
                            "type": "string",
                            "title": "\u8868\u793a\u30d5\u30a3\u30fc\u30eb\u30c9",
                            "minLength": 0,
                            "maxLength": 255,
                            "description": "/help/guide \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u51e6\u7406\u884c\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `fields` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002"
                        }
                    },
                    "submitTo": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 255,
                        "title": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5148\u30ea\u30f3\u30af",
                        "description": "/help/guide \u306e\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u306b\u4f7f\u3046\u9001\u4fe1\u5148\u30ea\u30f3\u30af\u3002HTTP\u30e1\u30bd\u30c3\u30c9\u3068\u9077\u79fb\u5148\u3092\u307e\u3068\u3081\u3001unsafe\u64cd\u4f5c\u306e\u5165\u53e3\u3092\u660e\u793a\u3059\u308b\u3002"
                    },
                    "staticContent": {
                        "type": [
                            "object",
                            "null"
                        ],
                        "title": "\u9759\u7684\u30b3\u30f3\u30c6\u30f3\u30c4",
                        "description": "/help/guide \u3067\u8868\u793a\u3059\u308b\u898f\u7d04\u30fb\u30d8\u30eb\u30d7\u30fb\u30a8\u30e9\u30fc\u7b49\u306e\u9759\u7684\u30da\u30fc\u30b8\u672c\u6587\u3068\u30bb\u30af\u30b7\u30e7\u30f3\u60c5\u5831\u3002",
                        "properties": {
                            "page": {
                                "type": [
                                    "string",
                                    "null"
                                ],
                                "minLength": 0,
                                "maxLength": 255,
                                "title": "\u30da\u30fc\u30b8\u8b58\u5225\u5b50",
                                "description": "/help/guide \u306e\u9759\u7684\u30b3\u30f3\u30c6\u30f3\u30c4\u3067\u8868\u793a\u5bfe\u8c61\u30da\u30fc\u30b8\u3092\u8b58\u5225\u3059\u308b\u5024\u3002\u30da\u30fc\u30b8\u756a\u53f7\u3067\u306f\u306a\u3044\u3002"
                            },
                            "sections": {
                                "type": [
                                    "array",
                                    "null"
                                ],
                                "title": "\u9759\u7684\u30b3\u30f3\u30c6\u30f3\u30c4\u30bb\u30af\u30b7\u30e7\u30f3\u4e00\u89a7",
                                "description": "/help/guide \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u9759\u7684\u30b3\u30f3\u30c6\u30f3\u30c4\u30bb\u30af\u30b7\u30e7\u30f3\u4e00\u89a7\u3002\u914d\u5217\u8981\u7d20\u306fALPS\u610f\u5473\u3068Fake\u89b3\u5bdf\u306b\u57fa\u3065\u304d\u3001\u56fa\u5b9a\u3067\u304d\u306a\u3044\u52d5\u7684\u5217\u306f\u4f8b\u5916\u7406\u7531\u3092\u53f0\u5e33\u5316\u3059\u308b\u3002",
                                "items": {
                                    "type": "object",
                                    "title": "\u9759\u7684\u30b3\u30f3\u30c6\u30f3\u30c4\u30bb\u30af\u30b7\u30e7\u30f3",
                                    "description": "/help/guide \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u9759\u7684\u30b3\u30f3\u30c6\u30f3\u30c4\u30bb\u30af\u30b7\u30e7\u30f3\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `sections` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002",
                                    "properties": {
                                        "title": {
                                            "type": [
                                                "string",
                                                "null"
                                            ],
                                            "minLength": 0,
                                            "maxLength": 255,
                                            "title": "\u51e6\u7406\u30bf\u30a4\u30c8\u30eb",
                                            "description": "/help/guide \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8868\u793a\u307e\u305f\u306f\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u63cf\u753b\u306b\u4f7f\u3046\u51e6\u7406\u30bf\u30a4\u30c8\u30eb\u3002\u540c\u540dproperty\u3067\u3082\u89aa\u6587\u8108 `root` \u306b\u3088\u3063\u3066\u610f\u5473\u3092\u5206\u3051\u308b\u3002"
                                        },
                                        "body": {
                                            "type": [
                                                "string",
                                                "null"
                                            ],
                                            "minLength": 0,
                                            "maxLength": 128,
                                            "title": "\u672c\u6587",
                                            "description": "Fake\u89b3\u5bdf\u6587\u5b57\u9577 53\u301c53; \u89b3\u5bdf\u5024 '\u8ca9\u58f2\u696d\u8005: \u682a\u5f0f\u4f1a\u793eEC-CUBE\\n\u6240\u5728\u5730: \u5927\u962a\u5e02\u5317\u533a\u6885\u75301-1-1\\n\u9023\u7d61\u5148: 06-1234-5678'\u3002",
                                            "example": "\u8ca9\u58f2\u696d\u8005: \u682a\u5f0f\u4f1a\u793eEC-CUBE\n\u6240\u5728\u5730: \u5927\u962a\u5e02\u5317\u533a\u6885\u75301-1-1\n\u9023\u7d61\u5148: 06-1234-5678"
                                        },
                                        "content": {
                                            "type": [
                                                "string",
                                                "null"
                                            ],
                                            "minLength": 0,
                                            "maxLength": 255,
                                            "title": "\u672c\u6587",
                                            "description": "/help/guide \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8868\u793a\u307e\u305f\u306f\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u63cf\u753b\u306b\u4f7f\u3046\u672c\u6587\u3002\u540c\u540dproperty\u3067\u3082\u89aa\u6587\u8108 `root` \u306b\u3088\u3063\u3066\u610f\u5473\u3092\u5206\u3051\u308b\u3002"
                                        }
                                    },
                                    "additionalProperties": false,
                                    "$comment": "\u914d\u5217\u8981\u7d20\u306fFake/Resource\u3067\u89b3\u5bdf\u3055\u308c\u305f\u65e2\u77e5property\u306b\u56fa\u5b9a\u3059\u308b\u3002\u65b0\u3057\u3044\u5217\u304c\u5fc5\u8981\u306b\u306a\u3063\u305f\u5834\u5408\u306fSemantic-Ex\u89b3\u5bdf\u306b\u8ffd\u52a0\u3057\u3066schema\u3092\u66f4\u65b0\u3059\u308b\u3002"
                                },
                                "minItems": 0
                            },
                            "title": {
                                "type": [
                                    "string",
                                    "null"
                                ],
                                "minLength": 0,
                                "maxLength": 255,
                                "title": "\u51e6\u7406\u30bf\u30a4\u30c8\u30eb",
                                "description": "/help/guide \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8868\u793a\u307e\u305f\u306f\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u63cf\u753b\u306b\u4f7f\u3046\u51e6\u7406\u30bf\u30a4\u30c8\u30eb\u3002\u540c\u540dproperty\u3067\u3082\u89aa\u6587\u8108 `root` \u306b\u3088\u3063\u3066\u610f\u5473\u3092\u5206\u3051\u308b\u3002"
                            }
                        },
                        "additionalProperties": false,
                        "required": [
                            "page",
                            "sections",
                            "title"
                        ]
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "\u3053\u306e\u30ec\u30b9\u30dd\u30f3\u30b9/\u64cd\u4f5c\u304c\u5bfe\u5fdc\u3059\u308bALPS\u9077\u79fbID\u3002\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u306e\u72b6\u614b\u9077\u79fb\u8ffd\u8de1\u306b\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "transitionId"
                ]
            },
            "GET/help/privacyResponse": {
                "title": "GET /help/privacy response",
                "description": "GET /help/privacy response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "fields": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u9759\u7684\u8868\u793a\u30d5\u30a3\u30fc\u30eb\u30c9",
                        "description": "/help/privacy \u3067\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u3078\u6e21\u3059\u8868\u793a\u7528\u30d5\u30a3\u30fc\u30eb\u30c9\u96c6\u5408\u3002\u30d5\u30a9\u30fc\u30e0\u5165\u529b\u5024\u3067\u306f\u306a\u304f\u753b\u9762\u6587\u8108\u30c7\u30fc\u30bf\u3002",
                        "items": {
                            "type": "string",
                            "title": "\u8868\u793a\u30d5\u30a3\u30fc\u30eb\u30c9",
                            "minLength": 0,
                            "maxLength": 255,
                            "description": "/help/privacy \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u51e6\u7406\u884c\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `fields` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002"
                        }
                    },
                    "submitTo": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 255,
                        "title": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5148\u30ea\u30f3\u30af",
                        "description": "/help/privacy \u306e\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u306b\u4f7f\u3046\u9001\u4fe1\u5148\u30ea\u30f3\u30af\u3002HTTP\u30e1\u30bd\u30c3\u30c9\u3068\u9077\u79fb\u5148\u3092\u307e\u3068\u3081\u3001unsafe\u64cd\u4f5c\u306e\u5165\u53e3\u3092\u660e\u793a\u3059\u308b\u3002"
                    },
                    "staticContent": {
                        "type": [
                            "object",
                            "null"
                        ],
                        "title": "\u9759\u7684\u30b3\u30f3\u30c6\u30f3\u30c4",
                        "description": "/help/privacy \u3067\u8868\u793a\u3059\u308b\u898f\u7d04\u30fb\u30d8\u30eb\u30d7\u30fb\u30a8\u30e9\u30fc\u7b49\u306e\u9759\u7684\u30da\u30fc\u30b8\u672c\u6587\u3068\u30bb\u30af\u30b7\u30e7\u30f3\u60c5\u5831\u3002",
                        "properties": {
                            "page": {
                                "type": [
                                    "string",
                                    "null"
                                ],
                                "minLength": 0,
                                "maxLength": 255,
                                "title": "\u30da\u30fc\u30b8\u8b58\u5225\u5b50",
                                "description": "/help/privacy \u306e\u9759\u7684\u30b3\u30f3\u30c6\u30f3\u30c4\u3067\u8868\u793a\u5bfe\u8c61\u30da\u30fc\u30b8\u3092\u8b58\u5225\u3059\u308b\u5024\u3002\u30da\u30fc\u30b8\u756a\u53f7\u3067\u306f\u306a\u3044\u3002"
                            },
                            "sections": {
                                "type": [
                                    "array",
                                    "null"
                                ],
                                "title": "\u9759\u7684\u30b3\u30f3\u30c6\u30f3\u30c4\u30bb\u30af\u30b7\u30e7\u30f3\u4e00\u89a7",
                                "description": "/help/privacy \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u9759\u7684\u30b3\u30f3\u30c6\u30f3\u30c4\u30bb\u30af\u30b7\u30e7\u30f3\u4e00\u89a7\u3002\u914d\u5217\u8981\u7d20\u306fALPS\u610f\u5473\u3068Fake\u89b3\u5bdf\u306b\u57fa\u3065\u304d\u3001\u56fa\u5b9a\u3067\u304d\u306a\u3044\u52d5\u7684\u5217\u306f\u4f8b\u5916\u7406\u7531\u3092\u53f0\u5e33\u5316\u3059\u308b\u3002",
                                "items": {
                                    "type": "object",
                                    "title": "\u9759\u7684\u30b3\u30f3\u30c6\u30f3\u30c4\u30bb\u30af\u30b7\u30e7\u30f3",
                                    "description": "/help/privacy \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u9759\u7684\u30b3\u30f3\u30c6\u30f3\u30c4\u30bb\u30af\u30b7\u30e7\u30f3\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `sections` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002",
                                    "properties": {
                                        "title": {
                                            "type": [
                                                "string",
                                                "null"
                                            ],
                                            "minLength": 0,
                                            "maxLength": 255,
                                            "title": "\u51e6\u7406\u30bf\u30a4\u30c8\u30eb",
                                            "description": "/help/privacy \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8868\u793a\u307e\u305f\u306f\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u63cf\u753b\u306b\u4f7f\u3046\u51e6\u7406\u30bf\u30a4\u30c8\u30eb\u3002\u540c\u540dproperty\u3067\u3082\u89aa\u6587\u8108 `root` \u306b\u3088\u3063\u3066\u610f\u5473\u3092\u5206\u3051\u308b\u3002"
                                        },
                                        "body": {
                                            "type": [
                                                "string",
                                                "null"
                                            ],
                                            "minLength": 0,
                                            "maxLength": 128,
                                            "title": "\u672c\u6587",
                                            "description": "Fake\u89b3\u5bdf\u6587\u5b57\u9577 53\u301c53; \u89b3\u5bdf\u5024 '\u8ca9\u58f2\u696d\u8005: \u682a\u5f0f\u4f1a\u793eEC-CUBE\\n\u6240\u5728\u5730: \u5927\u962a\u5e02\u5317\u533a\u6885\u75301-1-1\\n\u9023\u7d61\u5148: 06-1234-5678'\u3002",
                                            "example": "\u8ca9\u58f2\u696d\u8005: \u682a\u5f0f\u4f1a\u793eEC-CUBE\n\u6240\u5728\u5730: \u5927\u962a\u5e02\u5317\u533a\u6885\u75301-1-1\n\u9023\u7d61\u5148: 06-1234-5678"
                                        },
                                        "content": {
                                            "type": [
                                                "string",
                                                "null"
                                            ],
                                            "minLength": 0,
                                            "maxLength": 255,
                                            "title": "\u672c\u6587",
                                            "description": "/help/privacy \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8868\u793a\u307e\u305f\u306f\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u63cf\u753b\u306b\u4f7f\u3046\u672c\u6587\u3002\u540c\u540dproperty\u3067\u3082\u89aa\u6587\u8108 `root` \u306b\u3088\u3063\u3066\u610f\u5473\u3092\u5206\u3051\u308b\u3002"
                                        }
                                    },
                                    "additionalProperties": false,
                                    "$comment": "\u914d\u5217\u8981\u7d20\u306fFake/Resource\u3067\u89b3\u5bdf\u3055\u308c\u305f\u65e2\u77e5property\u306b\u56fa\u5b9a\u3059\u308b\u3002\u65b0\u3057\u3044\u5217\u304c\u5fc5\u8981\u306b\u306a\u3063\u305f\u5834\u5408\u306fSemantic-Ex\u89b3\u5bdf\u306b\u8ffd\u52a0\u3057\u3066schema\u3092\u66f4\u65b0\u3059\u308b\u3002"
                                },
                                "minItems": 0
                            },
                            "title": {
                                "type": [
                                    "string",
                                    "null"
                                ],
                                "minLength": 0,
                                "maxLength": 255,
                                "title": "\u51e6\u7406\u30bf\u30a4\u30c8\u30eb",
                                "description": "/help/privacy \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8868\u793a\u307e\u305f\u306f\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u63cf\u753b\u306b\u4f7f\u3046\u51e6\u7406\u30bf\u30a4\u30c8\u30eb\u3002\u540c\u540dproperty\u3067\u3082\u89aa\u6587\u8108 `root` \u306b\u3088\u3063\u3066\u610f\u5473\u3092\u5206\u3051\u308b\u3002"
                            }
                        },
                        "additionalProperties": false,
                        "required": [
                            "page",
                            "sections",
                            "title"
                        ]
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "\u3053\u306e\u30ec\u30b9\u30dd\u30f3\u30b9/\u64cd\u4f5c\u304c\u5bfe\u5fdc\u3059\u308bALPS\u9077\u79fbID\u3002\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u306e\u72b6\u614b\u9077\u79fb\u8ffd\u8de1\u306b\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "transitionId"
                ]
            },
            "GET/help/trade-lawResponse": {
                "title": "GET /help/trade-law response",
                "description": "GET /help/trade-law response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "fields": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u9759\u7684\u8868\u793a\u30d5\u30a3\u30fc\u30eb\u30c9",
                        "description": "/help/trade-law \u3067\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u3078\u6e21\u3059\u8868\u793a\u7528\u30d5\u30a3\u30fc\u30eb\u30c9\u96c6\u5408\u3002\u30d5\u30a9\u30fc\u30e0\u5165\u529b\u5024\u3067\u306f\u306a\u304f\u753b\u9762\u6587\u8108\u30c7\u30fc\u30bf\u3002",
                        "items": {
                            "type": "string",
                            "title": "\u8868\u793a\u30d5\u30a3\u30fc\u30eb\u30c9",
                            "minLength": 0,
                            "maxLength": 255,
                            "description": "/help/trade-law \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u51e6\u7406\u884c\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `fields` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002"
                        }
                    },
                    "submitTo": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 255,
                        "title": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5148\u30ea\u30f3\u30af",
                        "description": "/help/trade-law \u306e\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u306b\u4f7f\u3046\u9001\u4fe1\u5148\u30ea\u30f3\u30af\u3002HTTP\u30e1\u30bd\u30c3\u30c9\u3068\u9077\u79fb\u5148\u3092\u307e\u3068\u3081\u3001unsafe\u64cd\u4f5c\u306e\u5165\u53e3\u3092\u660e\u793a\u3059\u308b\u3002"
                    },
                    "staticContent": {
                        "type": [
                            "object",
                            "null"
                        ],
                        "title": "\u9759\u7684\u30b3\u30f3\u30c6\u30f3\u30c4",
                        "description": "/help/trade-law \u3067\u8868\u793a\u3059\u308b\u898f\u7d04\u30fb\u30d8\u30eb\u30d7\u30fb\u30a8\u30e9\u30fc\u7b49\u306e\u9759\u7684\u30da\u30fc\u30b8\u672c\u6587\u3068\u30bb\u30af\u30b7\u30e7\u30f3\u60c5\u5831\u3002",
                        "properties": {
                            "page": {
                                "type": [
                                    "string",
                                    "null"
                                ],
                                "minLength": 0,
                                "maxLength": 255,
                                "title": "\u30da\u30fc\u30b8\u8b58\u5225\u5b50",
                                "description": "/help/trade-law \u306e\u9759\u7684\u30b3\u30f3\u30c6\u30f3\u30c4\u3067\u8868\u793a\u5bfe\u8c61\u30da\u30fc\u30b8\u3092\u8b58\u5225\u3059\u308b\u5024\u3002\u30da\u30fc\u30b8\u756a\u53f7\u3067\u306f\u306a\u3044\u3002"
                            },
                            "sections": {
                                "type": [
                                    "array",
                                    "null"
                                ],
                                "title": "\u9759\u7684\u30b3\u30f3\u30c6\u30f3\u30c4\u30bb\u30af\u30b7\u30e7\u30f3\u4e00\u89a7",
                                "description": "/help/trade-law \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u9759\u7684\u30b3\u30f3\u30c6\u30f3\u30c4\u30bb\u30af\u30b7\u30e7\u30f3\u4e00\u89a7\u3002\u914d\u5217\u8981\u7d20\u306fALPS\u610f\u5473\u3068Fake\u89b3\u5bdf\u306b\u57fa\u3065\u304d\u3001\u56fa\u5b9a\u3067\u304d\u306a\u3044\u52d5\u7684\u5217\u306f\u4f8b\u5916\u7406\u7531\u3092\u53f0\u5e33\u5316\u3059\u308b\u3002",
                                "items": {
                                    "type": "object",
                                    "title": "\u9759\u7684\u30b3\u30f3\u30c6\u30f3\u30c4\u30bb\u30af\u30b7\u30e7\u30f3",
                                    "description": "/help/trade-law \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u9759\u7684\u30b3\u30f3\u30c6\u30f3\u30c4\u30bb\u30af\u30b7\u30e7\u30f3\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `sections` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002",
                                    "properties": {
                                        "title": {
                                            "type": [
                                                "string",
                                                "null"
                                            ],
                                            "minLength": 0,
                                            "maxLength": 255,
                                            "title": "\u51e6\u7406\u30bf\u30a4\u30c8\u30eb",
                                            "description": "/help/trade-law \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8868\u793a\u307e\u305f\u306f\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u63cf\u753b\u306b\u4f7f\u3046\u51e6\u7406\u30bf\u30a4\u30c8\u30eb\u3002\u540c\u540dproperty\u3067\u3082\u89aa\u6587\u8108 `root` \u306b\u3088\u3063\u3066\u610f\u5473\u3092\u5206\u3051\u308b\u3002"
                                        },
                                        "body": {
                                            "type": [
                                                "string",
                                                "null"
                                            ],
                                            "minLength": 0,
                                            "maxLength": 128,
                                            "title": "\u672c\u6587",
                                            "description": "Fake\u89b3\u5bdf\u6587\u5b57\u9577 53\u301c53; \u89b3\u5bdf\u5024 '\u8ca9\u58f2\u696d\u8005: \u682a\u5f0f\u4f1a\u793eEC-CUBE\\n\u6240\u5728\u5730: \u5927\u962a\u5e02\u5317\u533a\u6885\u75301-1-1\\n\u9023\u7d61\u5148: 06-1234-5678'\u3002",
                                            "example": "\u8ca9\u58f2\u696d\u8005: \u682a\u5f0f\u4f1a\u793eEC-CUBE\n\u6240\u5728\u5730: \u5927\u962a\u5e02\u5317\u533a\u6885\u75301-1-1\n\u9023\u7d61\u5148: 06-1234-5678"
                                        },
                                        "content": {
                                            "type": [
                                                "string",
                                                "null"
                                            ],
                                            "minLength": 0,
                                            "maxLength": 255,
                                            "title": "\u672c\u6587",
                                            "description": "/help/trade-law \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8868\u793a\u307e\u305f\u306f\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u63cf\u753b\u306b\u4f7f\u3046\u672c\u6587\u3002\u540c\u540dproperty\u3067\u3082\u89aa\u6587\u8108 `root` \u306b\u3088\u3063\u3066\u610f\u5473\u3092\u5206\u3051\u308b\u3002"
                                        }
                                    },
                                    "additionalProperties": false,
                                    "$comment": "\u914d\u5217\u8981\u7d20\u306fFake/Resource\u3067\u89b3\u5bdf\u3055\u308c\u305f\u65e2\u77e5property\u306b\u56fa\u5b9a\u3059\u308b\u3002\u65b0\u3057\u3044\u5217\u304c\u5fc5\u8981\u306b\u306a\u3063\u305f\u5834\u5408\u306fSemantic-Ex\u89b3\u5bdf\u306b\u8ffd\u52a0\u3057\u3066schema\u3092\u66f4\u65b0\u3059\u308b\u3002"
                                },
                                "minItems": 0
                            },
                            "title": {
                                "type": [
                                    "string",
                                    "null"
                                ],
                                "minLength": 0,
                                "maxLength": 255,
                                "title": "\u51e6\u7406\u30bf\u30a4\u30c8\u30eb",
                                "description": "/help/trade-law \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8868\u793a\u307e\u305f\u306f\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u63cf\u753b\u306b\u4f7f\u3046\u51e6\u7406\u30bf\u30a4\u30c8\u30eb\u3002\u540c\u540dproperty\u3067\u3082\u89aa\u6587\u8108 `root` \u306b\u3088\u3063\u3066\u610f\u5473\u3092\u5206\u3051\u308b\u3002"
                            }
                        },
                        "additionalProperties": false,
                        "required": [
                            "page",
                            "sections",
                            "title"
                        ]
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "\u3053\u306e\u30ec\u30b9\u30dd\u30f3\u30b9/\u64cd\u4f5c\u304c\u5bfe\u5fdc\u3059\u308bALPS\u9077\u79fbID\u3002\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u306e\u72b6\u614b\u9077\u79fb\u8ffd\u8de1\u306b\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "transitionId"
                ]
            },
            "GET/mypage/addressResponse": {
                "title": "GET /mypage/address response",
                "description": "GET /mypage/address response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "form": {
                        "type": [
                            "object",
                            "array",
                            "null"
                        ],
                        "title": "\u5165\u529b\u30d5\u30a9\u30fc\u30e0",
                        "description": "Aura/WebForm\u7531\u6765\u306e\u30d5\u30a9\u30fc\u30e0\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3002\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5185\u90e8\u69cb\u9020\u306e\u305f\u3081schema\u3067\u306f\u5b58\u5728\u3068\u578b\u306e\u307f\u3092\u5951\u7d04\u3059\u308b\u3002",
                        "$comment": "Aura/WebForm\u7531\u6765\u306e\u4e0d\u900f\u660e\u30d5\u30a9\u30fc\u30e0\u8868\u73fe\u3002Resource\u5883\u754c\u3067\u306f\u30d5\u30a9\u30fc\u30e0\u306e\u5b58\u5728\u3068\u30b3\u30f3\u30c6\u30ad\u30b9\u30c8\u3060\u3051\u3092\u5951\u7d04\u3057\u3001\u5185\u90e8\u69cb\u9020\u306f\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5883\u754c\u306b\u59d4\u306d\u308b\u305f\u3081\u8ffd\u52a0\u30ad\u30fc\u5236\u7d04\u3092\u7f6e\u304b\u306a\u3044\u3002"
                    },
                    "submitTo": {
                        "type": [
                            "object",
                            "null"
                        ],
                        "title": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5148\u30ea\u30f3\u30af",
                        "description": "/mypage/address \u306e\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u306b\u4f7f\u3046\u9001\u4fe1\u5148\u30ea\u30f3\u30af\u3002HTTP\u30e1\u30bd\u30c3\u30c9\u3068\u9077\u79fb\u5148\u3092\u307e\u3068\u3081\u3001unsafe\u64cd\u4f5c\u306e\u5165\u53e3\u3092\u660e\u793a\u3059\u308b\u3002",
                        "properties": {
                            "href": {
                                "title": "\u30ea\u30f3\u30afURI\u53c2\u7167\uff08URI\u53c2\u7167\uff09",
                                "description": "\u30da\u30fc\u30b8\u306eURL\u30d1\u30b9\uff08Symfony\u30eb\u30fc\u30c8\u540d\u3002\u4f8b: homepage, product_list\uff09",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "method": {
                                "type": [
                                    "string",
                                    "null"
                                ],
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ],
                                "title": "HTTP\u30e1\u30bd\u30c3\u30c9",
                                "description": "/mypage/address \u306e\u30ea\u30f3\u30af\u307e\u305f\u306f\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u3067\u4f7f\u3046HTTP\u30e1\u30bd\u30c3\u30c9\u3002GET/POST\u7b49\u306e\u9077\u79fb\u65b9\u6cd5\u3092\u8868\u3059\u3002"
                            }
                        },
                        "additionalProperties": false,
                        "required": [
                            "href",
                            "method"
                        ]
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "\u3053\u306e\u30ec\u30b9\u30dd\u30f3\u30b9/\u64cd\u4f5c\u304c\u5bfe\u5fdc\u3059\u308bALPS\u9077\u79fbID\u3002\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u306e\u72b6\u614b\u9077\u79fb\u8ffd\u8de1\u306b\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "csrfToken": {
                        "title": "\u51e6\u7406\u8b58\u5225\u5b50",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u306e\u507d\u9020\u3092\u9632\u3050\u305f\u3081\u306b\u9001\u4fe1\u5143\u753b\u9762\u3067\u767a\u884c\u3055\u308c\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "addressId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u914d\u9001\u5148\u4f4f\u6240ID",
                        "description": "dtb_customer_address.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e AddressEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f 32\u6841hex \u3092\u751f\u6210\u3057\u3001SQL \u5b9f\u88c5\u306f dtb_customer_address.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u6240\u6709\u8005\u306f customerId\u3001AUTHZ \u691c\u67fb\u306f CustomerAddressUpdated / CustomerAddressDeleted \u3067 getById \u2192 customerId \u4e00\u81f4\u78ba\u8a8d\u306e\u9806\u3067\u5b9f\u65bd Fake\u89b3\u5bdf\u6587\u5b57\u9577 32\u301c32; \u89b3\u5bdf\u5024 'addr00000000000000000000000000a1'\u3002",
                        "example": "addr00000000000000000000000000a1",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "transitionId",
                    "addressId",
                    "csrfToken"
                ]
            },
            "PUT/mypage/addressResponse": {
                "title": "PUT /mypage/address response",
                "description": "PUT /mypage/address response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "kana02": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "pattern": "^[\u30a1-\u30f6\u30fc\u3000 ]*$",
                        "title": "\u30e1\u30a4",
                        "description": "\u540d\u306e\u30ab\u30bf\u30ab\u30ca\u8aad\u307f\u3002\u5168\u89d2\u30ab\u30bf\u30ab\u30ca\u306e\u307f\u8a31\u53ef\uff08\u3072\u3089\u304c\u306a\u5165\u529b\u6642\u306f\u81ea\u52d5\u5909\u63db\uff09\u3002\u65e5\u672c\u306e\u6c0f\u540d\u5165\u529b\u306b\u7279\u6709\u306e\u8aad\u307f\u4eee\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 3\u301c3; \u89b3\u5bdf\u5024 '\u30a2\u30ea\u30b9', '\u30cf\u30ca\u30b3', '\u30bf\u30ed\u30a6'; null 18/31\u3002",
                        "example": "\u30a2\u30ea\u30b9"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u3002Fake corpus\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3060\u304c\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3059\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c10; \u89b3\u5bdf\u5024 '0312345678', '0901234567', '0612345678'; null 18/33\u3002",
                        "type": [
                            "string",
                            "null"
                        ],
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "name02": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 80,
                        "title": "\u540d",
                        "description": "\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u30fb\u304a\u554f\u3044\u5408\u308f\u305b\u3067\u5171\u901a\u4f7f\u7528\u3055\u308c\u308b\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 1\u301c3; \u89b3\u5bdf\u5024 '\u30a2\u30ea\u30b9', '\u592a\u90ce', '\u6b21\u90ce', '\u82b1\u5b50', '\u4e09\u90ce', '\u6e08'\u3002",
                        "example": "\u30a2\u30ea\u30b9"
                    },
                    "customerId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u4f1a\u54e1ID",
                        "description": "dtb_customer.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e Entity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\uff08\u30de\u30b9\u30a2\u30b5\u30a4\u30f3\u30e1\u30f3\u30c8\u9632\u6b62\u306e\u305f\u3081\u3001Session/AuthZ \u7d4c\u7531\u3067\u8aad\u307f\u51fa\u3057\u3001\u30ea\u30af\u30a8\u30b9\u30c8\u672c\u6587\u304b\u3089\u306f\u53d7\u3051\u53d6\u3089\u306a\u3044\uff09\u3002Favorite / Cart / Order \u306e\u6240\u6709\u8005\u30ad\u30fc\u3068\u3057\u3066\u6a2a\u65ad\u4f7f\u7528 Fake\u89b3\u5bdf\u6587\u5b57\u9577 12\u301c32; \u89b3\u5bdf\u5024 'customer-001', '0123456789abcdef0123456789abcdef', 'customer-002', 'favorite-list-customer', 'favorite-html-customer', 'fedcba9876543210fedcba9876543210', 'aaaaaaaa00000000bbbbbbbb11111111', '10000000aaaa1111bbbb2222cccc3333'\u3002",
                        "example": "customer-001",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    },
                    "kana01": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "pattern": "^[\u30a1-\u30f6\u30fc\u3000 ]*$",
                        "title": "\u30bb\u30a4",
                        "description": "\u59d3\u306e\u30ab\u30bf\u30ab\u30ca\u8aad\u307f\u3002\u5168\u89d2\u30ab\u30bf\u30ab\u30ca\u306e\u307f\u8a31\u53ef\uff08\u3072\u3089\u304c\u306a\u5165\u529b\u6642\u306f\u81ea\u52d5\u5909\u63db\uff09\u3002\u65e5\u672c\u306e\u6c0f\u540d\u5165\u529b\u306b\u7279\u6709\u306e\u8aad\u307f\u4eee\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 3\u301c3; \u89b3\u5bdf\u5024 '\u30e4\u30de\u30c0', '\u30b5\u30c8\u30a6'; null 18/31\u3002",
                        "example": "\u30e4\u30de\u30c0"
                    },
                    "name01": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 80,
                        "title": "\u59d3",
                        "description": "\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u30fb\u304a\u554f\u3044\u5408\u308f\u305b\u3067\u5171\u901a\u4f7f\u7528\u3055\u308c\u308b\u59d3 Fake\u89b3\u5bdf\u6587\u5b57\u9577 2\u301c2; \u89b3\u5bdf\u5024 '\u9234\u6728', '\u5c71\u7530', '\u4f50\u85e4', '\u9ad8\u6a4b', '\u9000\u4f1a'\u3002",
                        "example": "\u9234\u6728"
                    },
                    "addr02": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u756a\u5730\u30fb\u5efa\u7269\u540d",
                        "description": "\u756a\u5730\u30fb\u30d3\u30eb\u540d\u30fb\u90e8\u5c4b\u756a\u53f7\u7b49\u306e\u8a73\u7d30\u4f4f\u6240 Fake\u89b3\u5bdf\u6587\u5b57\u9577 5\u301c8; \u89b3\u5bdf\u5024 '\u795e\u5bae\u524d1-1-1', '\u4e38\u306e\u51852-2-2', '\u6885\u75301-1-1', '1-2-3'; null 18/33\u3002",
                        "example": "\u795e\u5bae\u524d1-1-1"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u6709\u7121\u3092\u3069\u3061\u3089\u3082\u53d7\u3051\u5165\u308c\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 7\u301c8; \u89b3\u5bdf\u5024 '1500001', '1000005', '5300001', '530-0001'; null 18/33\u3002",
                        "type": [
                            "string",
                            "null"
                        ],
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770c",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u90fd\u9053\u5e9c\u770cID\u3002\u4f4f\u6240\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u72b6\u614b\u3067\u306f0\u3001\u78ba\u5b9a\u4f4f\u6240\u3067\u306f1\u301c47\u3092\u4f7f\u3046\u3002 Fake\u89b3\u5bdf\u6570\u5024 13\u301c27; \u89b3\u5bdf\u5024 '13', '27'; null 3/9\u3002",
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "addr01": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u5e02\u533a\u753a\u6751",
                        "description": "\u90fd\u9053\u5e9c\u770c\u3088\u308a\u4e0b\u4f4d\u306e\u5e02\u533a\u753a\u6751\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 3\u301c7; \u89b3\u5bdf\u5024 '\u6e0b\u8c37\u533a', '\u5343\u4ee3\u7530\u533a', '\u5927\u962a\u5e02\u5317\u533a', '\u5927\u962a\u5e02\u5317\u533a\u6885\u7530'; null 18/33\u3002",
                        "example": "\u6e0b\u8c37\u533a"
                    },
                    "companyName": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u4f1a\u793e\u540d",
                        "description": "\u6cd5\u4eba\u9867\u5ba2\u306e\u793e\u540d\u3002B2B\u53d6\u5f15\u3084\u30a4\u30f3\u30dc\u30a4\u30b9\u3067\u4f7f\u7528 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c11; \u89b3\u5bdf\u5024 'Acme Corp.', '\u682a\u5f0f\u4f1a\u793eEC-CUBE'; null 24/32\u3002",
                        "example": "Acme Corp."
                    },
                    "addressId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u914d\u9001\u5148\u4f4f\u6240ID",
                        "description": "dtb_customer_address.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e AddressEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f 32\u6841hex \u3092\u751f\u6210\u3057\u3001SQL \u5b9f\u88c5\u306f dtb_customer_address.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u6240\u6709\u8005\u306f customerId\u3001AUTHZ \u691c\u67fb\u306f CustomerAddressUpdated / CustomerAddressDeleted \u3067 getById \u2192 customerId \u4e00\u81f4\u78ba\u8a8d\u306e\u9806\u3067\u5b9f\u65bd Fake\u89b3\u5bdf\u6587\u5b57\u9577 32\u301c32; \u89b3\u5bdf\u5024 'addr00000000000000000000000000a1'\u3002",
                        "example": "addr00000000000000000000000000a1",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "name02",
                    "customerId",
                    "name01",
                    "addr01",
                    "addressId"
                ]
            },
            "DELETE/mypage/addressResponse": {
                "title": "DELETE /mypage/address response",
                "description": "DELETE /mypage/address response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "customerId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u4f1a\u54e1ID",
                        "description": "dtb_customer.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e Entity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\uff08\u30de\u30b9\u30a2\u30b5\u30a4\u30f3\u30e1\u30f3\u30c8\u9632\u6b62\u306e\u305f\u3081\u3001Session/AuthZ \u7d4c\u7531\u3067\u8aad\u307f\u51fa\u3057\u3001\u30ea\u30af\u30a8\u30b9\u30c8\u672c\u6587\u304b\u3089\u306f\u53d7\u3051\u53d6\u3089\u306a\u3044\uff09\u3002Favorite / Cart / Order \u306e\u6240\u6709\u8005\u30ad\u30fc\u3068\u3057\u3066\u6a2a\u65ad\u4f7f\u7528 Fake\u89b3\u5bdf\u6587\u5b57\u9577 12\u301c32; \u89b3\u5bdf\u5024 'customer-001', '0123456789abcdef0123456789abcdef', 'customer-002', 'favorite-list-customer', 'favorite-html-customer', 'fedcba9876543210fedcba9876543210', 'aaaaaaaa00000000bbbbbbbb11111111', '10000000aaaa1111bbbb2222cccc3333'\u3002",
                        "example": "customer-001",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    },
                    "addressId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u914d\u9001\u5148\u4f4f\u6240ID",
                        "description": "dtb_customer_address.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e AddressEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f 32\u6841hex \u3092\u751f\u6210\u3057\u3001SQL \u5b9f\u88c5\u306f dtb_customer_address.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u6240\u6709\u8005\u306f customerId\u3001AUTHZ \u691c\u67fb\u306f CustomerAddressUpdated / CustomerAddressDeleted \u3067 getById \u2192 customerId \u4e00\u81f4\u78ba\u8a8d\u306e\u9806\u3067\u5b9f\u65bd Fake\u89b3\u5bdf\u6587\u5b57\u9577 32\u301c32; \u89b3\u5bdf\u5024 'addr00000000000000000000000000a1'\u3002",
                        "example": "addr00000000000000000000000000a1",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "customerId",
                    "addressId"
                ]
            },
            "GET/mypage/address-listResponse": {
                "title": "GET /mypage/address-list response",
                "description": "GET /mypage/address-list response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "count": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 2147483647,
                        "title": "\u4ef6\u6570",
                        "description": "/mypage/address-list \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8fd4\u3059\u4ef6\u6570\u3002\u4e00\u89a7\u30fb\u96c6\u8a08\u30fb\u51e6\u7406\u7d50\u679c\u306e\u898f\u6a21\u3092\u8868\u3059\u975e\u8ca0\u6574\u6570\u3002"
                    },
                    "addresses": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u4f4f\u6240\u4e00\u89a7",
                        "description": "/mypage/address-list \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u4f4f\u6240\u4e00\u89a7\u3002\u914d\u5217\u8981\u7d20\u306fALPS\u610f\u5473\u3068Fake\u89b3\u5bdf\u306b\u57fa\u3065\u304d\u3001\u56fa\u5b9a\u3067\u304d\u306a\u3044\u52d5\u7684\u5217\u306f\u4f8b\u5916\u7406\u7531\u3092\u53f0\u5e33\u5316\u3059\u308b\u3002",
                        "items": {
                            "type": [
                                "object",
                                "null"
                            ],
                            "title": "\u4f4f\u6240",
                            "description": "/mypage/address-list \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u4f4f\u6240\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `addresses` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002",
                            "properties": {
                                "kana02": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 32,
                                    "pattern": "^[\u30a1-\u30f6\u30fc\u3000 ]*$",
                                    "title": "\u30e1\u30a4",
                                    "description": "\u540d\u306e\u30ab\u30bf\u30ab\u30ca\u8aad\u307f\u3002\u5168\u89d2\u30ab\u30bf\u30ab\u30ca\u306e\u307f\u8a31\u53ef\uff08\u3072\u3089\u304c\u306a\u5165\u529b\u6642\u306f\u81ea\u52d5\u5909\u63db\uff09\u3002\u65e5\u672c\u306e\u6c0f\u540d\u5165\u529b\u306b\u7279\u6709\u306e\u8aad\u307f\u4eee\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 3\u301c3; \u89b3\u5bdf\u5024 '\u30a2\u30ea\u30b9', '\u30cf\u30ca\u30b3', '\u30bf\u30ed\u30a6'; null 18/31\u3002",
                                    "example": "\u30a2\u30ea\u30b9"
                                },
                                "phoneNumber": {
                                    "title": "\u96fb\u8a71\u756a\u53f7",
                                    "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u3002Fake corpus\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3060\u304c\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3059\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c10; \u89b3\u5bdf\u5024 '0312345678', '0901234567', '0612345678'; null 18/33\u3002",
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                                    "minLength": 10,
                                    "maxLength": 13,
                                    "example": "0312345678"
                                },
                                "name02": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 80,
                                    "title": "\u540d",
                                    "description": "\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u30fb\u304a\u554f\u3044\u5408\u308f\u305b\u3067\u5171\u901a\u4f7f\u7528\u3055\u308c\u308b\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 1\u301c3; \u89b3\u5bdf\u5024 '\u30a2\u30ea\u30b9', '\u592a\u90ce', '\u6b21\u90ce', '\u82b1\u5b50', '\u4e09\u90ce', '\u6e08'\u3002",
                                    "example": "\u30a2\u30ea\u30b9"
                                },
                                "kana01": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 32,
                                    "pattern": "^[\u30a1-\u30f6\u30fc\u3000 ]*$",
                                    "title": "\u30bb\u30a4",
                                    "description": "\u59d3\u306e\u30ab\u30bf\u30ab\u30ca\u8aad\u307f\u3002\u5168\u89d2\u30ab\u30bf\u30ab\u30ca\u306e\u307f\u8a31\u53ef\uff08\u3072\u3089\u304c\u306a\u5165\u529b\u6642\u306f\u81ea\u52d5\u5909\u63db\uff09\u3002\u65e5\u672c\u306e\u6c0f\u540d\u5165\u529b\u306b\u7279\u6709\u306e\u8aad\u307f\u4eee\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 3\u301c3; \u89b3\u5bdf\u5024 '\u30e4\u30de\u30c0', '\u30b5\u30c8\u30a6'; null 18/31\u3002",
                                    "example": "\u30e4\u30de\u30c0"
                                },
                                "name01": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 80,
                                    "title": "\u59d3",
                                    "description": "\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u30fb\u304a\u554f\u3044\u5408\u308f\u305b\u3067\u5171\u901a\u4f7f\u7528\u3055\u308c\u308b\u59d3 Fake\u89b3\u5bdf\u6587\u5b57\u9577 2\u301c2; \u89b3\u5bdf\u5024 '\u9234\u6728', '\u5c71\u7530', '\u4f50\u85e4', '\u9ad8\u6a4b', '\u9000\u4f1a'\u3002",
                                    "example": "\u9234\u6728"
                                },
                                "addr02": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 32,
                                    "title": "\u756a\u5730\u30fb\u5efa\u7269\u540d",
                                    "description": "\u756a\u5730\u30fb\u30d3\u30eb\u540d\u30fb\u90e8\u5c4b\u756a\u53f7\u7b49\u306e\u8a73\u7d30\u4f4f\u6240 Fake\u89b3\u5bdf\u6587\u5b57\u9577 5\u301c8; \u89b3\u5bdf\u5024 '\u795e\u5bae\u524d1-1-1', '\u4e38\u306e\u51852-2-2', '\u6885\u75301-1-1', '1-2-3'; null 18/33\u3002",
                                    "example": "\u795e\u5bae\u524d1-1-1"
                                },
                                "postalCode": {
                                    "title": "\u90f5\u4fbf\u756a\u53f7",
                                    "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u6709\u7121\u3092\u3069\u3061\u3089\u3082\u53d7\u3051\u5165\u308c\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 7\u301c8; \u89b3\u5bdf\u5024 '1500001', '1000005', '5300001', '530-0001'; null 18/33\u3002",
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "pattern": "^\\d{3}-?\\d{4}$",
                                    "example": "1500001"
                                },
                                "pref": {
                                    "title": "\u90fd\u9053\u5e9c\u770c",
                                    "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u90fd\u9053\u5e9c\u770cID\u3002\u4f4f\u6240\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u72b6\u614b\u3067\u306f0\u3001\u78ba\u5b9a\u4f4f\u6240\u3067\u306f1\u301c47\u3092\u4f7f\u3046\u3002 Fake\u89b3\u5bdf\u6570\u5024 13\u301c27; \u89b3\u5bdf\u5024 '13', '27'; null 3/9\u3002",
                                    "type": [
                                        "integer",
                                        "null"
                                    ],
                                    "minimum": 0,
                                    "maximum": 47,
                                    "example": 13
                                },
                                "addr01": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 32,
                                    "title": "\u5e02\u533a\u753a\u6751",
                                    "description": "\u90fd\u9053\u5e9c\u770c\u3088\u308a\u4e0b\u4f4d\u306e\u5e02\u533a\u753a\u6751\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 3\u301c7; \u89b3\u5bdf\u5024 '\u6e0b\u8c37\u533a', '\u5343\u4ee3\u7530\u533a', '\u5927\u962a\u5e02\u5317\u533a', '\u5927\u962a\u5e02\u5317\u533a\u6885\u7530'; null 18/33\u3002",
                                    "example": "\u6e0b\u8c37\u533a"
                                },
                                "companyName": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 32,
                                    "title": "\u4f1a\u793e\u540d",
                                    "description": "\u6cd5\u4eba\u9867\u5ba2\u306e\u793e\u540d\u3002B2B\u53d6\u5f15\u3084\u30a4\u30f3\u30dc\u30a4\u30b9\u3067\u4f7f\u7528 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c11; \u89b3\u5bdf\u5024 'Acme Corp.', '\u682a\u5f0f\u4f1a\u793eEC-CUBE'; null 24/32\u3002",
                                    "example": "Acme Corp."
                                },
                                "prefName": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 32,
                                    "title": "\u90fd\u9053\u5e9c\u770c\u540d",
                                    "description": "\u90fd\u9053\u5e9c\u770c\u306e\u8868\u793a\u540d\uff08mtb_pref.name\uff09\u3002pref\uff08mtb_pref \u3078\u306e\u6574\u6570 FK\uff09\u3092\u4f4f\u6240\u884c\u306b\u63cf\u753b\u3059\u308b\u305f\u3081\u306e\u8868\u793a\u7528\u6295\u5f71\u30d5\u30a3\u30fc\u30eb\u30c9\u3067\u3042\u308a\u3001storage \u306e\u771f\u306e leaf \u5217\u3067\u306f\u306a\u3044\u3002Phase 3 enrichment \u3067\u8ffd\u52a0\u3002SqlAddressStorage \u304c dtb_customer_address.pref_id \u2192 mtb_pref \u3092 JOIN \u3057\u3066\u5145\u586b\u3059\u308b\uff08\u69cb\u9020\u306e\u307f\u30c0\u30f3\u30d7\u3067\u306f mtb_pref \u306f\u7a7a\u306e\u305f\u3081\u3001\u672a\u30b7\u30fc\u30c9\u6642\u306f\u7a7a\u6587\u5b57\u306b degrade\uff09\u3002\u914d\u9001\u5148\u4f4f\u6240\u4e00\u89a7\u753b\u9762\uff08CustomerAddress\uff09\u304c pref \u306e\u6574\u6570 id \u3067\u306f\u306a\u304f\u90fd\u9053\u5e9c\u770c\u540d\u3092\u8868\u793a\u3059\u308b\u305f\u3081\u306b\u4f7f\u7528 Fake\u89b3\u5bdf\u6587\u5b57\u9577 3\u301c3; \u89b3\u5bdf\u5024 '\u6771\u4eac\u90fd', '\u5927\u962a\u5e9c'\u3002",
                                    "example": "\u6771\u4eac\u90fd"
                                },
                                "addressId": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "title": "\u914d\u9001\u5148\u4f4f\u6240ID",
                                    "description": "dtb_customer_address.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e AddressEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f 32\u6841hex \u3092\u751f\u6210\u3057\u3001SQL \u5b9f\u88c5\u306f dtb_customer_address.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u6240\u6709\u8005\u306f customerId\u3001AUTHZ \u691c\u67fb\u306f CustomerAddressUpdated / CustomerAddressDeleted \u3067 getById \u2192 customerId \u4e00\u81f4\u78ba\u8a8d\u306e\u9806\u3067\u5b9f\u65bd Fake\u89b3\u5bdf\u6587\u5b57\u9577 32\u301c32; \u89b3\u5bdf\u5024 'addr00000000000000000000000000a1'\u3002",
                                    "example": "addr00000000000000000000000000a1",
                                    "minLength": 0,
                                    "maxLength": 128,
                                    "pattern": "^[A-Za-z0-9._:@/-]*$",
                                    "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                                }
                            },
                            "additionalProperties": false,
                            "$comment": "\u914d\u5217\u8981\u7d20\u306fFake/Resource\u3067\u89b3\u5bdf\u3055\u308c\u305f\u65e2\u77e5property\u306b\u56fa\u5b9a\u3059\u308b\u3002\u65b0\u3057\u3044\u5217\u304c\u5fc5\u8981\u306b\u306a\u3063\u305f\u5834\u5408\u306fSemantic-Ex\u89b3\u5bdf\u306b\u8ffd\u52a0\u3057\u3066schema\u3092\u66f4\u65b0\u3059\u308b\u3002"
                        },
                        "minItems": 0
                    },
                    "customerId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u4f1a\u54e1ID",
                        "description": "dtb_customer.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e Entity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\uff08\u30de\u30b9\u30a2\u30b5\u30a4\u30f3\u30e1\u30f3\u30c8\u9632\u6b62\u306e\u305f\u3081\u3001Session/AuthZ \u7d4c\u7531\u3067\u8aad\u307f\u51fa\u3057\u3001\u30ea\u30af\u30a8\u30b9\u30c8\u672c\u6587\u304b\u3089\u306f\u53d7\u3051\u53d6\u3089\u306a\u3044\uff09\u3002Favorite / Cart / Order \u306e\u6240\u6709\u8005\u30ad\u30fc\u3068\u3057\u3066\u6a2a\u65ad\u4f7f\u7528 Fake\u89b3\u5bdf\u6587\u5b57\u9577 12\u301c32; \u89b3\u5bdf\u5024 'customer-001', '0123456789abcdef0123456789abcdef', 'customer-002', 'favorite-list-customer', 'favorite-html-customer', 'fedcba9876543210fedcba9876543210', 'aaaaaaaa00000000bbbbbbbb11111111', '10000000aaaa1111bbbb2222cccc3333'\u3002",
                        "example": "customer-001",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "count",
                    "addresses",
                    "customerId"
                ]
            },
            "POST/mypage/address-listResponse": {
                "title": "POST /mypage/address-list response",
                "description": "POST /mypage/address-list response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "kana02": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "pattern": "^[\u30a1-\u30f6\u30fc\u3000 ]*$",
                        "title": "\u30e1\u30a4",
                        "description": "\u540d\u306e\u30ab\u30bf\u30ab\u30ca\u8aad\u307f\u3002\u5168\u89d2\u30ab\u30bf\u30ab\u30ca\u306e\u307f\u8a31\u53ef\uff08\u3072\u3089\u304c\u306a\u5165\u529b\u6642\u306f\u81ea\u52d5\u5909\u63db\uff09\u3002\u65e5\u672c\u306e\u6c0f\u540d\u5165\u529b\u306b\u7279\u6709\u306e\u8aad\u307f\u4eee\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 3\u301c3; \u89b3\u5bdf\u5024 '\u30a2\u30ea\u30b9', '\u30cf\u30ca\u30b3', '\u30bf\u30ed\u30a6'; null 18/31\u3002",
                        "example": "\u30a2\u30ea\u30b9"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u3002Fake corpus\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3060\u304c\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3059\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c10; \u89b3\u5bdf\u5024 '0312345678', '0901234567', '0612345678'; null 18/33\u3002",
                        "type": [
                            "string",
                            "null"
                        ],
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "name02": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 80,
                        "title": "\u540d",
                        "description": "\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u30fb\u304a\u554f\u3044\u5408\u308f\u305b\u3067\u5171\u901a\u4f7f\u7528\u3055\u308c\u308b\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 1\u301c3; \u89b3\u5bdf\u5024 '\u30a2\u30ea\u30b9', '\u592a\u90ce', '\u6b21\u90ce', '\u82b1\u5b50', '\u4e09\u90ce', '\u6e08'\u3002",
                        "example": "\u30a2\u30ea\u30b9"
                    },
                    "customerId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u4f1a\u54e1ID",
                        "description": "dtb_customer.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e Entity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\uff08\u30de\u30b9\u30a2\u30b5\u30a4\u30f3\u30e1\u30f3\u30c8\u9632\u6b62\u306e\u305f\u3081\u3001Session/AuthZ \u7d4c\u7531\u3067\u8aad\u307f\u51fa\u3057\u3001\u30ea\u30af\u30a8\u30b9\u30c8\u672c\u6587\u304b\u3089\u306f\u53d7\u3051\u53d6\u3089\u306a\u3044\uff09\u3002Favorite / Cart / Order \u306e\u6240\u6709\u8005\u30ad\u30fc\u3068\u3057\u3066\u6a2a\u65ad\u4f7f\u7528 Fake\u89b3\u5bdf\u6587\u5b57\u9577 12\u301c32; \u89b3\u5bdf\u5024 'customer-001', '0123456789abcdef0123456789abcdef', 'customer-002', 'favorite-list-customer', 'favorite-html-customer', 'fedcba9876543210fedcba9876543210', 'aaaaaaaa00000000bbbbbbbb11111111', '10000000aaaa1111bbbb2222cccc3333'\u3002",
                        "example": "customer-001",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    },
                    "kana01": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "pattern": "^[\u30a1-\u30f6\u30fc\u3000 ]*$",
                        "title": "\u30bb\u30a4",
                        "description": "\u59d3\u306e\u30ab\u30bf\u30ab\u30ca\u8aad\u307f\u3002\u5168\u89d2\u30ab\u30bf\u30ab\u30ca\u306e\u307f\u8a31\u53ef\uff08\u3072\u3089\u304c\u306a\u5165\u529b\u6642\u306f\u81ea\u52d5\u5909\u63db\uff09\u3002\u65e5\u672c\u306e\u6c0f\u540d\u5165\u529b\u306b\u7279\u6709\u306e\u8aad\u307f\u4eee\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 3\u301c3; \u89b3\u5bdf\u5024 '\u30e4\u30de\u30c0', '\u30b5\u30c8\u30a6'; null 18/31\u3002",
                        "example": "\u30e4\u30de\u30c0"
                    },
                    "name01": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 80,
                        "title": "\u59d3",
                        "description": "\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u30fb\u304a\u554f\u3044\u5408\u308f\u305b\u3067\u5171\u901a\u4f7f\u7528\u3055\u308c\u308b\u59d3 Fake\u89b3\u5bdf\u6587\u5b57\u9577 2\u301c2; \u89b3\u5bdf\u5024 '\u9234\u6728', '\u5c71\u7530', '\u4f50\u85e4', '\u9ad8\u6a4b', '\u9000\u4f1a'\u3002",
                        "example": "\u9234\u6728"
                    },
                    "addr02": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u756a\u5730\u30fb\u5efa\u7269\u540d",
                        "description": "\u756a\u5730\u30fb\u30d3\u30eb\u540d\u30fb\u90e8\u5c4b\u756a\u53f7\u7b49\u306e\u8a73\u7d30\u4f4f\u6240 Fake\u89b3\u5bdf\u6587\u5b57\u9577 5\u301c8; \u89b3\u5bdf\u5024 '\u795e\u5bae\u524d1-1-1', '\u4e38\u306e\u51852-2-2', '\u6885\u75301-1-1', '1-2-3'; null 18/33\u3002",
                        "example": "\u795e\u5bae\u524d1-1-1"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u6709\u7121\u3092\u3069\u3061\u3089\u3082\u53d7\u3051\u5165\u308c\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 7\u301c8; \u89b3\u5bdf\u5024 '1500001', '1000005', '5300001', '530-0001'; null 18/33\u3002",
                        "type": [
                            "string",
                            "null"
                        ],
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770c",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u90fd\u9053\u5e9c\u770cID\u3002\u4f4f\u6240\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u72b6\u614b\u3067\u306f0\u3001\u78ba\u5b9a\u4f4f\u6240\u3067\u306f1\u301c47\u3092\u4f7f\u3046\u3002 Fake\u89b3\u5bdf\u6570\u5024 13\u301c27; \u89b3\u5bdf\u5024 '13', '27'; null 3/9\u3002",
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "addr01": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u5e02\u533a\u753a\u6751",
                        "description": "\u90fd\u9053\u5e9c\u770c\u3088\u308a\u4e0b\u4f4d\u306e\u5e02\u533a\u753a\u6751\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 3\u301c7; \u89b3\u5bdf\u5024 '\u6e0b\u8c37\u533a', '\u5343\u4ee3\u7530\u533a', '\u5927\u962a\u5e02\u5317\u533a', '\u5927\u962a\u5e02\u5317\u533a\u6885\u7530'; null 18/33\u3002",
                        "example": "\u6e0b\u8c37\u533a"
                    },
                    "companyName": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u4f1a\u793e\u540d",
                        "description": "\u6cd5\u4eba\u9867\u5ba2\u306e\u793e\u540d\u3002B2B\u53d6\u5f15\u3084\u30a4\u30f3\u30dc\u30a4\u30b9\u3067\u4f7f\u7528 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c11; \u89b3\u5bdf\u5024 'Acme Corp.', '\u682a\u5f0f\u4f1a\u793eEC-CUBE'; null 24/32\u3002",
                        "example": "Acme Corp."
                    },
                    "addressId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u914d\u9001\u5148\u4f4f\u6240ID",
                        "description": "dtb_customer_address.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e AddressEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f 32\u6841hex \u3092\u751f\u6210\u3057\u3001SQL \u5b9f\u88c5\u306f dtb_customer_address.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u6240\u6709\u8005\u306f customerId\u3001AUTHZ \u691c\u67fb\u306f CustomerAddressUpdated / CustomerAddressDeleted \u3067 getById \u2192 customerId \u4e00\u81f4\u78ba\u8a8d\u306e\u9806\u3067\u5b9f\u65bd Fake\u89b3\u5bdf\u6587\u5b57\u9577 32\u301c32; \u89b3\u5bdf\u5024 'addr00000000000000000000000000a1'\u3002",
                        "example": "addr00000000000000000000000000a1",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "name02",
                    "customerId",
                    "name01",
                    "addr01",
                    "addressId"
                ]
            },
            "GET/mypage/changeResponse": {
                "title": "GET /mypage/change response",
                "description": "GET /mypage/change response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "form": {
                        "type": [
                            "object",
                            "array",
                            "null"
                        ],
                        "title": "\u5165\u529b\u30d5\u30a9\u30fc\u30e0",
                        "description": "Aura/WebForm\u7531\u6765\u306e\u30d5\u30a9\u30fc\u30e0\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3002\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5185\u90e8\u69cb\u9020\u306e\u305f\u3081schema\u3067\u306f\u5b58\u5728\u3068\u578b\u306e\u307f\u3092\u5951\u7d04\u3059\u308b\u3002",
                        "$comment": "Aura/WebForm\u7531\u6765\u306e\u4e0d\u900f\u660e\u30d5\u30a9\u30fc\u30e0\u8868\u73fe\u3002Resource\u5883\u754c\u3067\u306f\u30d5\u30a9\u30fc\u30e0\u306e\u5b58\u5728\u3068\u30b3\u30f3\u30c6\u30ad\u30b9\u30c8\u3060\u3051\u3092\u5951\u7d04\u3057\u3001\u5185\u90e8\u69cb\u9020\u306f\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5883\u754c\u306b\u59d4\u306d\u308b\u305f\u3081\u8ffd\u52a0\u30ad\u30fc\u5236\u7d04\u3092\u7f6e\u304b\u306a\u3044\u3002"
                    },
                    "kana02": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "pattern": "^[\u30a1-\u30f6\u30fc\u3000 ]*$",
                        "title": "\u30e1\u30a4",
                        "description": "\u540d\u306e\u30ab\u30bf\u30ab\u30ca\u8aad\u307f\u3002\u5168\u89d2\u30ab\u30bf\u30ab\u30ca\u306e\u307f\u8a31\u53ef\uff08\u3072\u3089\u304c\u306a\u5165\u529b\u6642\u306f\u81ea\u52d5\u5909\u63db\uff09\u3002\u65e5\u672c\u306e\u6c0f\u540d\u5165\u529b\u306b\u7279\u6709\u306e\u8aad\u307f\u4eee\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 3\u301c3; \u89b3\u5bdf\u5024 '\u30a2\u30ea\u30b9', '\u30cf\u30ca\u30b3', '\u30bf\u30ed\u30a6'; null 18/31\u3002",
                        "example": "\u30a2\u30ea\u30b9"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u3002Fake corpus\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3060\u304c\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3059\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c10; \u89b3\u5bdf\u5024 '0312345678', '0901234567', '0612345678'; null 18/33\u3002",
                        "type": [
                            "string",
                            "null"
                        ],
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "name02": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 80,
                        "title": "\u540d",
                        "description": "\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u30fb\u304a\u554f\u3044\u5408\u308f\u305b\u3067\u5171\u901a\u4f7f\u7528\u3055\u308c\u308b\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 1\u301c3; \u89b3\u5bdf\u5024 '\u30a2\u30ea\u30b9', '\u592a\u90ce', '\u6b21\u90ce', '\u82b1\u5b50', '\u4e09\u90ce', '\u6e08'\u3002",
                        "example": "\u30a2\u30ea\u30b9"
                    },
                    "customerId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u4f1a\u54e1ID",
                        "description": "dtb_customer.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e Entity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\uff08\u30de\u30b9\u30a2\u30b5\u30a4\u30f3\u30e1\u30f3\u30c8\u9632\u6b62\u306e\u305f\u3081\u3001Session/AuthZ \u7d4c\u7531\u3067\u8aad\u307f\u51fa\u3057\u3001\u30ea\u30af\u30a8\u30b9\u30c8\u672c\u6587\u304b\u3089\u306f\u53d7\u3051\u53d6\u3089\u306a\u3044\uff09\u3002Favorite / Cart / Order \u306e\u6240\u6709\u8005\u30ad\u30fc\u3068\u3057\u3066\u6a2a\u65ad\u4f7f\u7528 Fake\u89b3\u5bdf\u6587\u5b57\u9577 12\u301c32; \u89b3\u5bdf\u5024 'customer-001', '0123456789abcdef0123456789abcdef', 'customer-002', 'favorite-list-customer', 'favorite-html-customer', 'fedcba9876543210fedcba9876543210', 'aaaaaaaa00000000bbbbbbbb11111111', '10000000aaaa1111bbbb2222cccc3333'\u3002",
                        "example": "customer-001",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    },
                    "kana01": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "pattern": "^[\u30a1-\u30f6\u30fc\u3000 ]*$",
                        "title": "\u30bb\u30a4",
                        "description": "\u59d3\u306e\u30ab\u30bf\u30ab\u30ca\u8aad\u307f\u3002\u5168\u89d2\u30ab\u30bf\u30ab\u30ca\u306e\u307f\u8a31\u53ef\uff08\u3072\u3089\u304c\u306a\u5165\u529b\u6642\u306f\u81ea\u52d5\u5909\u63db\uff09\u3002\u65e5\u672c\u306e\u6c0f\u540d\u5165\u529b\u306b\u7279\u6709\u306e\u8aad\u307f\u4eee\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 3\u301c3; \u89b3\u5bdf\u5024 '\u30e4\u30de\u30c0', '\u30b5\u30c8\u30a6'; null 18/31\u3002",
                        "example": "\u30e4\u30de\u30c0"
                    },
                    "name01": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 80,
                        "title": "\u59d3",
                        "description": "\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u30fb\u304a\u554f\u3044\u5408\u308f\u305b\u3067\u5171\u901a\u4f7f\u7528\u3055\u308c\u308b\u59d3 Fake\u89b3\u5bdf\u6587\u5b57\u9577 2\u301c2; \u89b3\u5bdf\u5024 '\u9234\u6728', '\u5c71\u7530', '\u4f50\u85e4', '\u9ad8\u6a4b', '\u9000\u4f1a'\u3002",
                        "example": "\u9234\u6728"
                    },
                    "addr02": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u756a\u5730\u30fb\u5efa\u7269\u540d",
                        "description": "\u756a\u5730\u30fb\u30d3\u30eb\u540d\u30fb\u90e8\u5c4b\u756a\u53f7\u7b49\u306e\u8a73\u7d30\u4f4f\u6240 Fake\u89b3\u5bdf\u6587\u5b57\u9577 5\u301c8; \u89b3\u5bdf\u5024 '\u795e\u5bae\u524d1-1-1', '\u4e38\u306e\u51852-2-2', '\u6885\u75301-1-1', '1-2-3'; null 18/33\u3002",
                        "example": "\u795e\u5bae\u524d1-1-1"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u3002\u4f1a\u54e1\u767b\u9332\u30fb\u30ed\u30b0\u30a4\u30f3\u30fb\u901a\u77e5\u3067\u5171\u901a\u306b\u4f7f\u3046\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 15\u301c58; \u89b3\u5bdf\u5024 'bob@example.com', 'login-test@example.com', 'alice@example.com', 'carol@example.com', 'provisional@example.com', 'withdrawn-30000000aaaa3333bbbb4444cccc5555@example.invalid'\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u6709\u7121\u3092\u3069\u3061\u3089\u3082\u53d7\u3051\u5165\u308c\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 7\u301c8; \u89b3\u5bdf\u5024 '1500001', '1000005', '5300001', '530-0001'; null 18/33\u3002",
                        "type": [
                            "string",
                            "null"
                        ],
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770c",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u90fd\u9053\u5e9c\u770cID\u3002\u4f4f\u6240\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u72b6\u614b\u3067\u306f0\u3001\u78ba\u5b9a\u4f4f\u6240\u3067\u306f1\u301c47\u3092\u4f7f\u3046\u3002 Fake\u89b3\u5bdf\u6570\u5024 13\u301c27; \u89b3\u5bdf\u5024 '13', '27'; null 3/9\u3002",
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "addr01": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u5e02\u533a\u753a\u6751",
                        "description": "\u90fd\u9053\u5e9c\u770c\u3088\u308a\u4e0b\u4f4d\u306e\u5e02\u533a\u753a\u6751\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 3\u301c7; \u89b3\u5bdf\u5024 '\u6e0b\u8c37\u533a', '\u5343\u4ee3\u7530\u533a', '\u5927\u962a\u5e02\u5317\u533a', '\u5927\u962a\u5e02\u5317\u533a\u6885\u7530'; null 18/33\u3002",
                        "example": "\u6e0b\u8c37\u533a"
                    },
                    "submitTo": {
                        "type": [
                            "object",
                            "null"
                        ],
                        "title": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5148\u30ea\u30f3\u30af",
                        "description": "/mypage/change \u306e\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u306b\u4f7f\u3046\u9001\u4fe1\u5148\u30ea\u30f3\u30af\u3002HTTP\u30e1\u30bd\u30c3\u30c9\u3068\u9077\u79fb\u5148\u3092\u307e\u3068\u3081\u3001unsafe\u64cd\u4f5c\u306e\u5165\u53e3\u3092\u660e\u793a\u3059\u308b\u3002",
                        "properties": {
                            "href": {
                                "title": "\u30ea\u30f3\u30afURI\u53c2\u7167\uff08URI\u53c2\u7167\uff09",
                                "description": "\u30da\u30fc\u30b8\u306eURL\u30d1\u30b9\uff08Symfony\u30eb\u30fc\u30c8\u540d\u3002\u4f8b: homepage, product_list\uff09",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "method": {
                                "type": [
                                    "string",
                                    "null"
                                ],
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ],
                                "title": "HTTP\u30e1\u30bd\u30c3\u30c9",
                                "description": "/mypage/change \u306e\u30ea\u30f3\u30af\u307e\u305f\u306f\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u3067\u4f7f\u3046HTTP\u30e1\u30bd\u30c3\u30c9\u3002GET/POST\u7b49\u306e\u9077\u79fb\u65b9\u6cd5\u3092\u8868\u3059\u3002"
                            }
                        },
                        "additionalProperties": false,
                        "required": [
                            "href",
                            "method"
                        ]
                    },
                    "companyName": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u4f1a\u793e\u540d",
                        "description": "\u6cd5\u4eba\u9867\u5ba2\u306e\u793e\u540d\u3002B2B\u53d6\u5f15\u3084\u30a4\u30f3\u30dc\u30a4\u30b9\u3067\u4f7f\u7528 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c11; \u89b3\u5bdf\u5024 'Acme Corp.', '\u682a\u5f0f\u4f1a\u793eEC-CUBE'; null 24/32\u3002",
                        "example": "Acme Corp."
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "name02",
                    "customerId",
                    "name01",
                    "email",
                    "addr01",
                    "csrfToken"
                ]
            },
            "POST/mypage/changeResponse": {
                "title": "POST /mypage/change response",
                "description": "POST /mypage/change response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "message": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u4f1a\u54e1\u30e1\u30c3\u30bb\u30fc\u30b8",
                        "description": "/mypage/change \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u51e6\u7406\u7d50\u679c\u30e1\u30c3\u30bb\u30fc\u30b8\u3002\u6ce8\u6587\u6642\u304a\u554f\u3044\u5408\u308f\u305b\u6b04\u3067\u306f\u306a\u304f\u3001\u753b\u9762\u9077\u79fb\u3084\u5b8c\u4e86\u8868\u793a\u306e\u305f\u3081\u306e\u901a\u77e5\u6587\u3002",
                        "example": "\u914d\u9001\u306f\u5e73\u65e5\u5e0c\u671b\u3067\u3059\u3002"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u3002\u4f1a\u54e1\u767b\u9332\u30fb\u30ed\u30b0\u30a4\u30f3\u30fb\u901a\u77e5\u3067\u5171\u901a\u306b\u4f7f\u3046\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 15\u301c58; \u89b3\u5bdf\u5024 'bob@example.com', 'login-test@example.com', 'alice@example.com', 'carol@example.com', 'provisional@example.com', 'withdrawn-30000000aaaa3333bbbb4444cccc5555@example.invalid'\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "customerId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u4f1a\u54e1ID",
                        "description": "dtb_customer.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e Entity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\uff08\u30de\u30b9\u30a2\u30b5\u30a4\u30f3\u30e1\u30f3\u30c8\u9632\u6b62\u306e\u305f\u3081\u3001Session/AuthZ \u7d4c\u7531\u3067\u8aad\u307f\u51fa\u3057\u3001\u30ea\u30af\u30a8\u30b9\u30c8\u672c\u6587\u304b\u3089\u306f\u53d7\u3051\u53d6\u3089\u306a\u3044\uff09\u3002Favorite / Cart / Order \u306e\u6240\u6709\u8005\u30ad\u30fc\u3068\u3057\u3066\u6a2a\u65ad\u4f7f\u7528 Fake\u89b3\u5bdf\u6587\u5b57\u9577 12\u301c32; \u89b3\u5bdf\u5024 'customer-001', '0123456789abcdef0123456789abcdef', 'customer-002', 'favorite-list-customer', 'favorite-html-customer', 'fedcba9876543210fedcba9876543210', 'aaaaaaaa00000000bbbbbbbb11111111', '10000000aaaa1111bbbb2222cccc3333'\u3002",
                        "example": "customer-001",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    },
                    "name01": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 80,
                        "title": "\u59d3",
                        "description": "\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u30fb\u304a\u554f\u3044\u5408\u308f\u305b\u3067\u5171\u901a\u4f7f\u7528\u3055\u308c\u308b\u59d3 Fake\u89b3\u5bdf\u6587\u5b57\u9577 2\u301c2; \u89b3\u5bdf\u5024 '\u9234\u6728', '\u5c71\u7530', '\u4f50\u85e4', '\u9ad8\u6a4b', '\u9000\u4f1a'\u3002",
                        "example": "\u9234\u6728"
                    },
                    "name02": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 80,
                        "title": "\u540d",
                        "description": "\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u30fb\u304a\u554f\u3044\u5408\u308f\u305b\u3067\u5171\u901a\u4f7f\u7528\u3055\u308c\u308b\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 1\u301c3; \u89b3\u5bdf\u5024 '\u30a2\u30ea\u30b9', '\u592a\u90ce', '\u6b21\u90ce', '\u82b1\u5b50', '\u4e09\u90ce', '\u6e08'\u3002",
                        "example": "\u30a2\u30ea\u30b9"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "email",
                    "customerId",
                    "name01",
                    "name02"
                ]
            },
            "GET/mypage/change-completeResponse": {
                "title": "GET /mypage/change-complete response",
                "description": "GET /mypage/change-complete response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "fields": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u9759\u7684\u8868\u793a\u30d5\u30a3\u30fc\u30eb\u30c9",
                        "description": "/mypage/change-complete \u3067\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u3078\u6e21\u3059\u8868\u793a\u7528\u30d5\u30a3\u30fc\u30eb\u30c9\u96c6\u5408\u3002\u30d5\u30a9\u30fc\u30e0\u5165\u529b\u5024\u3067\u306f\u306a\u304f\u753b\u9762\u6587\u8108\u30c7\u30fc\u30bf\u3002",
                        "items": {
                            "type": "string",
                            "title": "\u8868\u793a\u30d5\u30a3\u30fc\u30eb\u30c9",
                            "minLength": 0,
                            "maxLength": 255,
                            "description": "/mypage/change-complete \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u4f1a\u54e1\u884c\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `fields` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002"
                        }
                    },
                    "submitTo": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 255,
                        "title": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5148\u30ea\u30f3\u30af",
                        "description": "/mypage/change-complete \u306e\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u306b\u4f7f\u3046\u9001\u4fe1\u5148\u30ea\u30f3\u30af\u3002HTTP\u30e1\u30bd\u30c3\u30c9\u3068\u9077\u79fb\u5148\u3092\u307e\u3068\u3081\u3001unsafe\u64cd\u4f5c\u306e\u5165\u53e3\u3092\u660e\u793a\u3059\u308b\u3002"
                    },
                    "staticContent": {
                        "type": [
                            "object",
                            "null"
                        ],
                        "title": "\u9759\u7684\u30b3\u30f3\u30c6\u30f3\u30c4",
                        "description": "/mypage/change-complete \u3067\u8868\u793a\u3059\u308b\u898f\u7d04\u30fb\u30d8\u30eb\u30d7\u30fb\u30a8\u30e9\u30fc\u7b49\u306e\u9759\u7684\u30da\u30fc\u30b8\u672c\u6587\u3068\u30bb\u30af\u30b7\u30e7\u30f3\u60c5\u5831\u3002",
                        "properties": {
                            "title": {
                                "type": [
                                    "string",
                                    "null"
                                ],
                                "minLength": 0,
                                "maxLength": 255,
                                "title": "\u51e6\u7406\u30bf\u30a4\u30c8\u30eb",
                                "description": "/mypage/change-complete \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8868\u793a\u307e\u305f\u306f\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u63cf\u753b\u306b\u4f7f\u3046\u51e6\u7406\u30bf\u30a4\u30c8\u30eb\u3002\u540c\u540dproperty\u3067\u3082\u89aa\u6587\u8108 `root` \u306b\u3088\u3063\u3066\u610f\u5473\u3092\u5206\u3051\u308b\u3002"
                            },
                            "page": {
                                "type": [
                                    "string",
                                    "null"
                                ],
                                "minLength": 0,
                                "maxLength": 255,
                                "title": "\u30da\u30fc\u30b8\u8b58\u5225\u5b50",
                                "description": "/mypage/change-complete \u306e\u9759\u7684\u30b3\u30f3\u30c6\u30f3\u30c4\u3067\u8868\u793a\u5bfe\u8c61\u30da\u30fc\u30b8\u3092\u8b58\u5225\u3059\u308b\u5024\u3002\u30da\u30fc\u30b8\u756a\u53f7\u3067\u306f\u306a\u3044\u3002"
                            }
                        },
                        "additionalProperties": false,
                        "required": [
                            "title",
                            "page"
                        ]
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "\u3053\u306e\u30ec\u30b9\u30dd\u30f3\u30b9/\u64cd\u4f5c\u304c\u5bfe\u5fdc\u3059\u308bALPS\u9077\u79fbID\u3002\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u306e\u72b6\u614b\u9077\u79fb\u8ffd\u8de1\u306b\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "transitionId"
                ]
            },
            "POST/mypage/favoriteResponse": {
                "title": "POST /mypage/favorite response",
                "description": "POST /mypage/favorite response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "alreadyExisted": {
                        "type": [
                            "boolean",
                            "null"
                        ],
                        "title": "\u65e2\u5b58\u5728\u30d5\u30e9\u30b0",
                        "description": "/mypage/favorite \u306e\u51e6\u7406\u72b6\u614b\u3092\u793a\u3059\u65e2\u5b58\u5728\u30d5\u30e9\u30b0\u3002\u753b\u9762\u8868\u793a\u3084\u51aa\u7b49\u51e6\u7406\u7d50\u679c\u306e\u5206\u5c90\u306b\u4f7f\u3046\u771f\u507d\u5024\u3002"
                    },
                    "productName": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "title": "\u5546\u54c1\u540d",
                        "description": "\u5546\u54c1\u306e\u8868\u793a\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 6\u301c17\u3002",
                        "example": "\u30b5\u30f3\u30d7\u30eb\u5546\u54c1 A"
                    },
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 \u5546\u54c1\u3092\u8b58\u5225\u3059\u308bSKU\u3002Fake corpus\u3067\u306fASCII\u82f1\u6570\u30fb\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3067\u3001\u53d7\u6ce8\u660e\u7d30/\u30ab\u30fc\u30c8\u660e\u7d30\u306e\u7d50\u5408\u30ad\u30fc\u306b\u306a\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c26\u3002",
                        "type": "string",
                        "minLength": 0,
                        "maxLength": 64,
                        "example": "sample-001"
                    },
                    "unitPrice": {
                        "title": "\u5358\u4fa1\uff08\u8868\u793a/\u8a08\u7b97\u7528\uff09",
                        "description": "\u660e\u7d301\u4ef6\u3042\u305f\u308a\u306e\u5358\u4fa1\u3002\u53d7\u6ce8/\u30ab\u30fc\u30c8\u660e\u7d30\u30fb\u304a\u6c17\u306b\u5165\u308a\u30b9\u30ca\u30c3\u30d7\u30b7\u30e7\u30c3\u30c8\u3067\u306f\u8ffd\u52a0\u6642\u70b9\u306e price02 \u3092\u30b9\u30ca\u30c3\u30d7\u30b7\u30e7\u30c3\u30c8\u3057\u3066\u4fdd\u6301\u3059\u308b\uff08\u5f8c\u306e\u5024\u5f15\u304d\u3084\u30de\u30b9\u30bf\u6539\u5b9a\u306b\u5f71\u97ff\u3055\u308c\u306a\u3044\uff09\u3002BeMart \u5074\u3067\u306f `int` \u5186\u6574\u6570 Fake\u89b3\u5bdf\u6570\u5024 1200\u301c9800; \u89b3\u5bdf\u5024 '1200', '9800'\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "customerId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u4f1a\u54e1ID",
                        "description": "dtb_customer.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e Entity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\uff08\u30de\u30b9\u30a2\u30b5\u30a4\u30f3\u30e1\u30f3\u30c8\u9632\u6b62\u306e\u305f\u3081\u3001Session/AuthZ \u7d4c\u7531\u3067\u8aad\u307f\u51fa\u3057\u3001\u30ea\u30af\u30a8\u30b9\u30c8\u672c\u6587\u304b\u3089\u306f\u53d7\u3051\u53d6\u3089\u306a\u3044\uff09\u3002Favorite / Cart / Order \u306e\u6240\u6709\u8005\u30ad\u30fc\u3068\u3057\u3066\u6a2a\u65ad\u4f7f\u7528 Fake\u89b3\u5bdf\u6587\u5b57\u9577 12\u301c32; \u89b3\u5bdf\u5024 'customer-001', '0123456789abcdef0123456789abcdef', 'customer-002', 'favorite-list-customer', 'favorite-html-customer', 'fedcba9876543210fedcba9876543210', 'aaaaaaaa00000000bbbbbbbb11111111', '10000000aaaa1111bbbb2222cccc3333'\u3002",
                        "example": "customer-001",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "alreadyExisted",
                    "productName",
                    "productCode",
                    "unitPrice",
                    "customerId"
                ]
            },
            "DELETE/mypage/favoriteResponse": {
                "title": "DELETE /mypage/favorite response",
                "description": "DELETE /mypage/favorite response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "alreadyAbsent": {
                        "type": [
                            "boolean",
                            "null"
                        ],
                        "title": "\u65e2\u4e0d\u5b58\u5728\u30d5\u30e9\u30b0",
                        "description": "/mypage/favorite \u306e\u51e6\u7406\u72b6\u614b\u3092\u793a\u3059\u65e2\u4e0d\u5b58\u5728\u30d5\u30e9\u30b0\u3002\u753b\u9762\u8868\u793a\u3084\u51aa\u7b49\u51e6\u7406\u7d50\u679c\u306e\u5206\u5c90\u306b\u4f7f\u3046\u771f\u507d\u5024\u3002"
                    },
                    "customerId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u4f1a\u54e1ID",
                        "description": "dtb_customer.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e Entity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\uff08\u30de\u30b9\u30a2\u30b5\u30a4\u30f3\u30e1\u30f3\u30c8\u9632\u6b62\u306e\u305f\u3081\u3001Session/AuthZ \u7d4c\u7531\u3067\u8aad\u307f\u51fa\u3057\u3001\u30ea\u30af\u30a8\u30b9\u30c8\u672c\u6587\u304b\u3089\u306f\u53d7\u3051\u53d6\u3089\u306a\u3044\uff09\u3002Favorite / Cart / Order \u306e\u6240\u6709\u8005\u30ad\u30fc\u3068\u3057\u3066\u6a2a\u65ad\u4f7f\u7528 Fake\u89b3\u5bdf\u6587\u5b57\u9577 12\u301c32; \u89b3\u5bdf\u5024 'customer-001', '0123456789abcdef0123456789abcdef', 'customer-002', 'favorite-list-customer', 'favorite-html-customer', 'fedcba9876543210fedcba9876543210', 'aaaaaaaa00000000bbbbbbbb11111111', '10000000aaaa1111bbbb2222cccc3333'\u3002",
                        "example": "customer-001",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    },
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 \u5546\u54c1\u3092\u8b58\u5225\u3059\u308bSKU\u3002Fake corpus\u3067\u306fASCII\u82f1\u6570\u30fb\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3067\u3001\u53d7\u6ce8\u660e\u7d30/\u30ab\u30fc\u30c8\u660e\u7d30\u306e\u7d50\u5408\u30ad\u30fc\u306b\u306a\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c26\u3002",
                        "type": "string",
                        "minLength": 0,
                        "maxLength": 64,
                        "example": "sample-001"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "alreadyAbsent",
                    "customerId",
                    "productCode"
                ]
            },
            "GET/mypage/favorite-listResponse": {
                "title": "GET /mypage/favorite-list response",
                "description": "GET /mypage/favorite-list response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "favoriteCount": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 2147483647,
                        "title": "\u304a\u6c17\u306b\u5165\u308a\u4ef6\u6570",
                        "description": "/mypage/favorite-list \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8fd4\u3059\u304a\u6c17\u306b\u5165\u308a\u4ef6\u6570\u3002\u4e00\u89a7\u30fb\u96c6\u8a08\u30fb\u51e6\u7406\u7d50\u679c\u306e\u898f\u6a21\u3092\u8868\u3059\u975e\u8ca0\u6574\u6570\u3002"
                    },
                    "customerId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u4f1a\u54e1ID",
                        "description": "dtb_customer.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e Entity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\uff08\u30de\u30b9\u30a2\u30b5\u30a4\u30f3\u30e1\u30f3\u30c8\u9632\u6b62\u306e\u305f\u3081\u3001Session/AuthZ \u7d4c\u7531\u3067\u8aad\u307f\u51fa\u3057\u3001\u30ea\u30af\u30a8\u30b9\u30c8\u672c\u6587\u304b\u3089\u306f\u53d7\u3051\u53d6\u3089\u306a\u3044\uff09\u3002Favorite / Cart / Order \u306e\u6240\u6709\u8005\u30ad\u30fc\u3068\u3057\u3066\u6a2a\u65ad\u4f7f\u7528 Fake\u89b3\u5bdf\u6587\u5b57\u9577 12\u301c32; \u89b3\u5bdf\u5024 'customer-001', '0123456789abcdef0123456789abcdef', 'customer-002', 'favorite-list-customer', 'favorite-html-customer', 'fedcba9876543210fedcba9876543210', 'aaaaaaaa00000000bbbbbbbb11111111', '10000000aaaa1111bbbb2222cccc3333'\u3002",
                        "example": "customer-001",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    },
                    "favorites": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u304a\u6c17\u306b\u5165\u308a\u5546\u54c1\u4e00\u89a7",
                        "description": "/mypage/favorite-list \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u304a\u6c17\u306b\u5165\u308a\u5546\u54c1\u4e00\u89a7\u3002\u914d\u5217\u8981\u7d20\u306fALPS\u610f\u5473\u3068Fake\u89b3\u5bdf\u306b\u57fa\u3065\u304d\u3001\u56fa\u5b9a\u3067\u304d\u306a\u3044\u52d5\u7684\u5217\u306f\u4f8b\u5916\u7406\u7531\u3092\u53f0\u5e33\u5316\u3059\u308b\u3002",
                        "items": {
                            "type": "object",
                            "title": "\u304a\u6c17\u306b\u5165\u308a\u5546\u54c1",
                            "description": "/mypage/favorite-list \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u304a\u6c17\u306b\u5165\u308a\u5546\u54c1\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `favorites` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002",
                            "properties": {
                                "productCode": {
                                    "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                                    "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 \u5546\u54c1\u3092\u8b58\u5225\u3059\u308bSKU\u3002Fake corpus\u3067\u306fASCII\u82f1\u6570\u30fb\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3067\u3001\u53d7\u6ce8\u660e\u7d30/\u30ab\u30fc\u30c8\u660e\u7d30\u306e\u7d50\u5408\u30ad\u30fc\u306b\u306a\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c26\u3002",
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 64,
                                    "example": "sample-001"
                                },
                                "name": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 32,
                                    "title": "\u51e6\u7406\u8868\u793a\u540d",
                                    "description": "Fake\u89b3\u5bdf\u6587\u5b57\u9577 1\u301c7; \u89b3\u5bdf\u5024 '\u30c6\u30b9\u30c8\u7ba1\u7406\u8005', '\u526f\u7ba1\u7406\u8005', '\u5e97\u8217\u30aa\u30fc\u30ca\u30fc', '\u524a\u9664\u6e08\u307f\u7ba1\u7406\u8005', 'Red', 'Blue', 'S', 'Color'\u3002",
                                    "example": "\u30c6\u30b9\u30c8\u7ba1\u7406\u8005"
                                },
                                "productName": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 128,
                                    "title": "\u5546\u54c1\u540d",
                                    "description": "\u5546\u54c1\u306e\u8868\u793a\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 6\u301c17\u3002",
                                    "example": "\u30b5\u30f3\u30d7\u30eb\u5546\u54c1 A"
                                },
                                "price02": {
                                    "title": "\u8ca9\u58f2\u4fa1\u683c",
                                    "description": "\u5b9f\u969b\u306e\u8ca9\u58f2\u4fa1\u683c\uff08\u7a0e\u629c\uff09\u3002\u7a0e\u8a08\u7b97\u30fb\u5c0f\u8a08\u8a08\u7b97\u306e\u30d9\u30fc\u30b9 Fake\u89b3\u5bdf\u6570\u5024 800\u301c28000\u3002",
                                    "type": [
                                        "integer",
                                        "null"
                                    ],
                                    "minimum": 0,
                                    "maximum": 999999999,
                                    "example": 3500
                                },
                                "mainImage": {
                                    "title": "\u30e1\u30a4\u30f3\u753b\u50cfURI",
                                    "description": "/mypage/favorite-list \u306e\u753b\u9762\u8868\u793a\u306b\u4f7f\u3046\u30e1\u30a4\u30f3\u753b\u50cfURI\u3002\u696d\u52d9\u30a8\u30f3\u30c6\u30a3\u30c6\u30a3\u305d\u306e\u3082\u306e\u3067\u306f\u306a\u304f\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8/\u4e00\u89a7\u8868\u793a\u306e\u88dc\u52a9\u5024\u3002",
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "format": "uri-reference",
                                    "minLength": 1,
                                    "maxLength": 2048,
                                    "example": "/products"
                                },
                                "unitPrice": {
                                    "title": "\u5358\u4fa1\uff08\u8868\u793a/\u8a08\u7b97\u7528\uff09",
                                    "description": "\u660e\u7d301\u4ef6\u3042\u305f\u308a\u306e\u5358\u4fa1\u3002\u53d7\u6ce8/\u30ab\u30fc\u30c8\u660e\u7d30\u30fb\u304a\u6c17\u306b\u5165\u308a\u30b9\u30ca\u30c3\u30d7\u30b7\u30e7\u30c3\u30c8\u3067\u306f\u8ffd\u52a0\u6642\u70b9\u306e price02 \u3092\u30b9\u30ca\u30c3\u30d7\u30b7\u30e7\u30c3\u30c8\u3057\u3066\u4fdd\u6301\u3059\u308b\uff08\u5f8c\u306e\u5024\u5f15\u304d\u3084\u30de\u30b9\u30bf\u6539\u5b9a\u306b\u5f71\u97ff\u3055\u308c\u306a\u3044\uff09\u3002BeMart \u5074\u3067\u306f `int` \u5186\u6574\u6570 Fake\u89b3\u5bdf\u6570\u5024 1200\u301c9800; \u89b3\u5bdf\u5024 '1200', '9800'\u3002",
                                    "type": [
                                        "integer",
                                        "null"
                                    ],
                                    "minimum": 0,
                                    "maximum": 999999999,
                                    "example": 1200
                                },
                                "fileName": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 1,
                                    "maxLength": 255,
                                    "title": "\u30d5\u30a1\u30a4\u30eb\u540d",
                                    "description": "\u5546\u54c1\u753b\u50cf\u306e\u30d5\u30a1\u30a4\u30eb\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 12\u301c15; \u89b3\u5bdf\u5024 'Mail/order.twig', 'Mail/entry.twig', 'sample-a.jpg', 'sample-b.jpg'\u3002",
                                    "example": "Mail/order.twig"
                                }
                            },
                            "additionalProperties": false,
                            "$comment": "\u914d\u5217\u8981\u7d20\u306fFake/Resource\u3067\u89b3\u5bdf\u3055\u308c\u305f\u65e2\u77e5property\u306b\u56fa\u5b9a\u3059\u308b\u3002\u65b0\u3057\u3044\u5217\u304c\u5fc5\u8981\u306b\u306a\u3063\u305f\u5834\u5408\u306fSemantic-Ex\u89b3\u5bdf\u306b\u8ffd\u52a0\u3057\u3066schema\u3092\u66f4\u65b0\u3059\u308b\u3002"
                        },
                        "minItems": 0
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "favoriteCount",
                    "customerId",
                    "favorites"
                ]
            },
            "GET/mypage/historyResponse": {
                "title": "GET /mypage/history response",
                "description": "GET /mypage/history response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "addPoint": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "title": "\u4ed8\u4e0e\u30dd\u30a4\u30f3\u30c8",
                        "description": "\u6ce8\u6587\u306b\u3088\u308a\u4ed8\u4e0e\u3055\u308c\u308b\u30dd\u30a4\u30f3\u30c8\u6570\u3002\u5546\u54c1\u5358\u4fa1(\u7a0e\u629c) x pointRate x \u6570\u91cf\u3067\u660e\u7d30\u3054\u3068\u306b\u8a08\u7b97\u3057\u5408\u7b97\u3002\u5229\u7528\u30dd\u30a4\u30f3\u30c8\u5206\u3092\u63a7\u9664\u3002\u767a\u9001\u6e08\u307f(DELIVERED)\u9077\u79fb\u6642\u306b\u4f1a\u54e1\u306epoint\u306b\u52a0\u7b97 Fake\u89b3\u5bdf\u6570\u5024 0\u301c127; \u89b3\u5bdf\u5024 '127', '0'\u3002",
                        "example": 127,
                        "minimum": 0,
                        "maximum": 2147483647
                    },
                    "paymentDate": {
                        "title": "\u5165\u91d1\u65e5",
                        "description": "\u5165\u91d1\u78ba\u8a8d\u65e5\u6642\u3002\u5165\u91d1\u6e08\u307f\u30b9\u30c6\u30fc\u30bf\u30b9\u3078\u306e\u5909\u66f4\u6642\u306b\u8a18\u9332 Fake\u89b3\u5bdf\u6587\u5b57\u9577 19\u301c19; \u89b3\u5bdf\u5024 '2026-04-01 10:00:00'\u3002",
                        "type": "string",
                        "example": "2026-04-01 10:00:00",
                        "$comment": "\u672a\u5165\u91d1\u30fb\u672a\u767a\u9001\u30fb\u672a\u516c\u958b\u306a\u3069\u672a\u78ba\u5b9a\u65e5\u6642\u306fEC-CUBE\u5883\u754c\u3067\u7a7a\u6587\u5b57\u3068\u3057\u3066\u73fe\u308c\u308b\u305f\u3081\u3001\u65e5\u4ed8/\u65e5\u6642\u6587\u5b57\u5217\u306b\u52a0\u3048\u3066\u7a7a\u6587\u5b57\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "pattern": "^$|\\d{4}-\\d{2}-\\d{2}([ T]\\d{2}:\\d{2}:\\d{2}([+-]\\d{2}:?\\d{2}|Z)?)?$"
                    },
                    "message": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u4f1a\u54e1\u30e1\u30c3\u30bb\u30fc\u30b8",
                        "description": "/mypage/history \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u51e6\u7406\u7d50\u679c\u30e1\u30c3\u30bb\u30fc\u30b8\u3002\u6ce8\u6587\u6642\u304a\u554f\u3044\u5408\u308f\u305b\u6b04\u3067\u306f\u306a\u304f\u3001\u753b\u9762\u9077\u79fb\u3084\u5b8c\u4e86\u8868\u793a\u306e\u305f\u3081\u306e\u901a\u77e5\u6587\u3002",
                        "example": "\u914d\u9001\u306f\u5e73\u65e5\u5e0c\u671b\u3067\u3059\u3002"
                    },
                    "orderNo": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 64,
                        "title": "\u6ce8\u6587\u756a\u53f7",
                        "description": "\u9867\u5ba2\u5411\u3051\u306e\u6ce8\u6587\u756a\u53f7\u3002\u30d5\u30a9\u30fc\u30de\u30c3\u30c8\u306f\u30ab\u30b9\u30bf\u30de\u30a4\u30ba\u53ef\u80fd Fake\u89b3\u5bdf\u6587\u5b57\u9577 32\u301c32; \u89b3\u5bdf\u5024 'past0000000000000000000000000001'\u3002",
                        "example": "past0000000000000000000000000001"
                    },
                    "deliveryFeeTotal": {
                        "title": "\u9001\u6599\u5408\u8a08",
                        "description": "\u5168\u914d\u9001\u5148\u306e\u9001\u6599\u5408\u8a08\uff08\u30b9\u30ca\u30c3\u30d7\u30b7\u30e7\u30c3\u30c8\uff09\u3002deliveryFeeAmount\uff08\u5730\u57df\u5225\u9001\u6599\uff09+ deliveryFee\uff08\u5546\u54c1\u5225\u9001\u6599\uff09\u00d7\u6570\u91cf \u306e\u5408\u8a08\u3002DeliveryFeePreprocessor\u3067\u8a08\u7b97\u3002\u30ab\u30fc\u30c8\u3068\u53d7\u6ce8\u306e\u4e21\u65b9\u3067\u4f7f\u7528 Fake\u89b3\u5bdf\u6570\u5024 0\u301c800; \u89b3\u5bdf\u5024 '600', '0', '500', '800', '700'\u3002",
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 600
                    },
                    "orderStatus": {
                        "title": "\u53d7\u6ce8\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 Fake\u89b3\u5bdf\u6570\u5024 1\u301c1; \u89b3\u5bdf\u5024 '1'\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "usePoint": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 2147483647,
                        "title": "\u4f7f\u7528\u30dd\u30a4\u30f3\u30c8",
                        "description": "\u6ce8\u6587\u3067\u4f7f\u7528\u3059\u308b\u30dd\u30a4\u30f3\u30c8\u6570\u3002\u5b9f\u969b\u306e\u5024\u5f15\u304d\u984d\u306f usePoint x pointConversionRate\uff08\u5207\u308a\u6368\u3066\uff09\u3067\u8a08\u7b97\u3055\u308c\u3001\u4e0d\u8ab2\u7a0e\u306e\u30dd\u30a4\u30f3\u30c8\u5024\u5f15\u304d\u660e\u7d30\u3068\u3057\u3066\u53d7\u6ce8\u306b\u8ffd\u52a0 Fake\u89b3\u5bdf\u6570\u5024 0\u301c0; \u89b3\u5bdf\u5024 '0'\u3002",
                        "example": 0
                    },
                    "orderDate": {
                        "title": "\u6ce8\u6587\u65e5",
                        "description": "\u6ce8\u6587\u78ba\u5b9a\u65e5\u6642 Fake\u89b3\u5bdf\u6587\u5b57\u9577 19\u301c19; \u89b3\u5bdf\u5024 '2026-04-01 10:00:00'\u3002",
                        "type": "string",
                        "example": "2026-04-01 10:00:00",
                        "pattern": "^\\d{4}-\\d{2}-\\d{2}([ T]\\d{2}:\\d{2}:\\d{2}([+-]\\d{2}:?\\d{2}|Z)?)?$"
                    },
                    "mailHistories": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u30e1\u30fc\u30eb\u5c65\u6b74\u4e00\u89a7",
                        "description": "Fake\u89b3\u5bdf\u6570\u5024 1\u301c1\u3002",
                        "items": {
                            "type": [
                                "object",
                                "null"
                            ],
                            "title": "\u30e1\u30fc\u30eb\u5c65\u6b74",
                            "description": "/mypage/history \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u30e1\u30fc\u30eb\u5c65\u6b74\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `mailHistories` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002",
                            "properties": {
                                "sendDate": {
                                    "title": "\u9001\u4fe1\u65e5\u6642",
                                    "description": "\u30e1\u30fc\u30eb\u306e\u9001\u4fe1\u65e5\u6642 Fake\u89b3\u5bdf\u6587\u5b57\u9577 19\u301c19; \u89b3\u5bdf\u5024 '2026-04-01 10:05:00'\u3002",
                                    "type": "string",
                                    "example": "2026-04-01 10:05:00",
                                    "$comment": "\u672a\u5165\u91d1\u30fb\u672a\u767a\u9001\u30fb\u672a\u516c\u958b\u306a\u3069\u672a\u78ba\u5b9a\u65e5\u6642\u306fEC-CUBE\u5883\u754c\u3067\u7a7a\u6587\u5b57\u3068\u3057\u3066\u73fe\u308c\u308b\u305f\u3081\u3001\u65e5\u4ed8/\u65e5\u6642\u6587\u5b57\u5217\u306b\u52a0\u3048\u3066\u7a7a\u6587\u5b57\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                                    "pattern": "^$|\\d{4}-\\d{2}-\\d{2}([ T]\\d{2}:\\d{2}:\\d{2}([+-]\\d{2}:?\\d{2}|Z)?)?$"
                                },
                                "mailSubject": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 32,
                                    "title": "\u30e1\u30fc\u30eb\u4ef6\u540d",
                                    "description": "\u30e1\u30fc\u30eb\u306e\u4ef6\u540d\u3002\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u5909\u6570\u3092\u542b\u3080\u5834\u5408\u3042\u308a Fake\u89b3\u5bdf\u6587\u5b57\u9577 13\u301c13; \u89b3\u5bdf\u5024 '\u3054\u6ce8\u6587\u3042\u308a\u304c\u3068\u3046\u3054\u3056\u3044\u307e\u3059'\u3002",
                                    "example": "\u3054\u6ce8\u6587\u3042\u308a\u304c\u3068\u3046\u3054\u3056\u3044\u307e\u3059"
                                },
                                "mailBody": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 128,
                                    "title": "\u30e1\u30fc\u30eb\u672c\u6587",
                                    "description": "\u9001\u4fe1\u6e08\u307f\u30e1\u30fc\u30eb\u306e\u30d7\u30ec\u30fc\u30f3\u30c6\u30ad\u30b9\u30c8\u672c\u6587 Fake\u89b3\u5bdf\u6587\u5b57\u9577 43\u301c43; \u89b3\u5bdf\u5024 '\u3053\u306e\u5ea6\u306f\u3054\u6ce8\u6587\u3044\u305f\u3060\u304d\u3042\u308a\u304c\u3068\u3046\u3054\u3056\u3044\u307e\u3059\u3002\\n\u5546\u54c1\u306e\u767a\u9001\u307e\u3067\u4eca\u3057\u3070\u3089\u304f\u304a\u5f85\u3061\u304f\u3060\u3055\u3044\u3002'\u3002",
                                    "example": "\u3053\u306e\u5ea6\u306f\u3054\u6ce8\u6587\u3044\u305f\u3060\u304d\u3042\u308a\u304c\u3068\u3046\u3054\u3056\u3044\u307e\u3059\u3002\n\u5546\u54c1\u306e\u767a\u9001\u307e\u3067\u4eca\u3057\u3070\u3089\u304f\u304a\u5f85\u3061\u304f\u3060\u3055\u3044\u3002"
                                }
                            },
                            "additionalProperties": false,
                            "$comment": "\u914d\u5217\u8981\u7d20\u306fFake/Resource\u3067\u89b3\u5bdf\u3055\u308c\u305f\u65e2\u77e5property\u306b\u56fa\u5b9a\u3059\u308b\u3002\u65b0\u3057\u3044\u5217\u304c\u5fc5\u8981\u306b\u306a\u3063\u305f\u5834\u5408\u306fSemantic-Ex\u89b3\u5bdf\u306b\u8ffd\u52a0\u3057\u3066schema\u3092\u66f4\u65b0\u3059\u308b\u3002"
                        },
                        "minItems": 0
                    },
                    "charge": {
                        "title": "\u624b\u6570\u6599",
                        "description": "\u53d7\u6ce8\u306e\u6c7a\u6e08\u624b\u6570\u6599\u3002paymentCharge\uff08\u652f\u6255\u65b9\u6cd5\u30de\u30b9\u30bf\u306e\u624b\u6570\u6599\uff09\u306e\u30b9\u30ca\u30c3\u30d7\u30b7\u30e7\u30c3\u30c8\u3002PaymentChargePreprocessor\u306b\u3088\u308a\u53d7\u6ce8\u4f5c\u6210\u6642\u306b\u30b3\u30d4\u30fc\u3055\u308c\u308b Fake\u89b3\u5bdf\u6570\u5024 0\u301c300; \u89b3\u5bdf\u5024 '0', '300', '200'\u3002",
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 0
                    },
                    "paymentTotal": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "title": "\u652f\u6255\u5408\u8a08",
                        "description": "\u5b9f\u969b\u306e\u652f\u6255\u91d1\u984d\u3002\u521d\u671f\u5024\u306ftotal\u3068\u540c\u5024\u3067\u3001PointProcessor\u304c\u30dd\u30a4\u30f3\u30c8\u5024\u5f15\u304d\u306eOrderItem\uff08type=POINT_DISCOUNT\u3001\u4e0d\u8ab2\u7a0e\uff09\u3092\u8ffd\u52a0\u5f8c\u306bPurchaseFlow.calculateTotal()\u3067\u518d\u8a08\u7b97\u3055\u308c\u308b\u3002\u8a08\u7b97\u5f0f: total - (\u5229\u7528\u30dd\u30a4\u30f3\u30c8 x pointConversionRate) Fake\u89b3\u5bdf\u6570\u5024 12700\u301c12700; \u89b3\u5bdf\u5024 '12700'\u3002",
                        "example": 12700,
                        "minimum": 0,
                        "maximum": 999999999
                    },
                    "tax": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "title": "\u7a0e\u984d",
                        "description": "\u53d7\u6ce8\u5168\u4f53\u306e\u7a0e\u984d\u5408\u8a08\uff08\u975e\u63a8\u5968\uff09\u3002\u660e\u7d30\u3054\u3068\u306e\u7a0e\u984d\u96c6\u8a08\u3068\u5dee\u7570\u304c\u751f\u3058\u308b\u5834\u5408\u304c\u3042\u308b\u305f\u3081\u3001\u6b63\u78ba\u306a\u7a0e\u984d\u306fOrderItem\u660e\u7d30\u3054\u3068\u306etax\u3092\u96c6\u8a08\u3059\u3079\u304d Fake\u89b3\u5bdf\u6570\u5024 1100\u301c1100; \u89b3\u5bdf\u5024 '1100'\u3002",
                        "example": 1100,
                        "minimum": 0,
                        "maximum": 999999999
                    },
                    "paymentMethod": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 255,
                        "title": "\u652f\u6255\u65b9\u6cd5",
                        "description": "\u6ce8\u6587\u6642\u70b9\u306e\u652f\u6255\u65b9\u6cd5\u540d\u79f0\uff08\u30b9\u30ca\u30c3\u30d7\u30b7\u30e7\u30c3\u30c8\uff09\u3002dtb_order.payment_method / dtb_payment.payment_method \u3068\u540c\u3058 EC-CUBE \u5883\u754c\u3067 varchar(255) \u3092\u8a31\u5bb9\u3059\u308b Fake\u89b3\u5bdf\u6587\u5b57\u9577 4\u301c4; \u89b3\u5bdf\u5024 '\u9280\u884c\u632f\u8fbc'\u3002",
                        "example": "\u9280\u884c\u632f\u8fbc"
                    },
                    "subtotal": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "title": "\u5546\u54c1\u5c0f\u8a08",
                        "description": "\u5546\u54c1\u5408\u8a08\u91d1\u984d\uff08\u7a0e\u8fbc\uff09\u3002\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u5024\u5f15\u304d\u9069\u7528\u524d\u306e\u5546\u54c1\u660e\u7d30\uff08orderItemType=1\uff09\u306e\u307f\u306e\u5408\u8a08\u3002PurchaseFlow.calculateSubTotal()\u3067\u8a08\u7b97\u3002\u9001\u6599\u7121\u6599\u6761\u4ef6\u306e\u5224\u5b9a\u57fa\u6e96\u306b\u3082\u4f7f\u7528\uff08\u304a\u5c4a\u3051\u5148\u3054\u3068\u306b\u5224\u5b9a\uff09 Fake\u89b3\u5bdf\u6570\u5024 11000\u301c11000; \u89b3\u5bdf\u5024 '11000'\u3002",
                        "example": 11000,
                        "minimum": 0,
                        "maximum": 999999999
                    },
                    "discount": {
                        "title": "\u5024\u5f15\u304d\u984d",
                        "description": "\u53d7\u6ce8\u5168\u4f53\u306e\u5024\u5f15\u304d\u5408\u8a08\u984d\u3002\u30af\u30fc\u30dd\u30f3\u7b49\u306b\u3088\u308b\u5024\u5f15\u304d Fake\u89b3\u5bdf\u6570\u5024 0\u301c0; \u89b3\u5bdf\u5024 '0'\u3002",
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 0
                    },
                    "shippings": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u914d\u9001\u4e00\u89a7",
                        "description": "Fake\u89b3\u5bdf\u6570\u5024 1\u301c1\u3002",
                        "items": {
                            "type": [
                                "object",
                                "null"
                            ],
                            "title": "\u914d\u9001",
                            "description": "/mypage/history \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u914d\u9001\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `shippings` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002",
                            "properties": {
                                "items": {
                                    "type": [
                                        "array",
                                        "null"
                                    ],
                                    "title": "\u660e\u7d30\u4e00\u89a7",
                                    "description": "/mypage/history \u306e\u89aa\u30aa\u30d6\u30b8\u30a7\u30af\u30c8 `shippingsItem` \u306b\u542b\u307e\u308c\u308b\u660e\u7d30\u914d\u5217\u3002\u5546\u54c1\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u306e\u6587\u8108\u3067\u89e3\u91c8\u3059\u308b\u3002",
                                    "items": {
                                        "type": [
                                            "object",
                                            "null"
                                        ],
                                        "title": "\u660e\u7d30",
                                        "description": "/mypage/history \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u660e\u7d30\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `items` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002",
                                        "properties": {
                                            "productName": {
                                                "type": [
                                                    "string",
                                                    "null"
                                                ],
                                                "minLength": 0,
                                                "maxLength": 128,
                                                "title": "\u5546\u54c1\u540d",
                                                "description": "\u5546\u54c1\u306e\u8868\u793a\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 6\u301c17\u3002",
                                                "example": "\u30b5\u30f3\u30d7\u30eb\u5546\u54c1 A"
                                            },
                                            "productCode": {
                                                "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                                                "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 \u5546\u54c1\u3092\u8b58\u5225\u3059\u308bSKU\u3002Fake corpus\u3067\u306fASCII\u82f1\u6570\u30fb\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3067\u3001\u53d7\u6ce8\u660e\u7d30/\u30ab\u30fc\u30c8\u660e\u7d30\u306e\u7d50\u5408\u30ad\u30fc\u306b\u306a\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c26\u3002",
                                                "type": "string",
                                                "minLength": 0,
                                                "maxLength": 64,
                                                "example": "sample-001"
                                            },
                                            "quantity": {
                                                "title": "\u6570\u91cf",
                                                "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 Fake\u89b3\u5bdf\u6570\u5024 1\u301c3; \u89b3\u5bdf\u5024 '1', '2', '3'\u3002",
                                                "type": "integer",
                                                "minimum": 1,
                                                "maximum": 999,
                                                "example": 1
                                            },
                                            "unitPrice": {
                                                "title": "\u5358\u4fa1\uff08\u8868\u793a/\u8a08\u7b97\u7528\uff09",
                                                "description": "\u660e\u7d301\u4ef6\u3042\u305f\u308a\u306e\u5358\u4fa1\u3002\u53d7\u6ce8/\u30ab\u30fc\u30c8\u660e\u7d30\u30fb\u304a\u6c17\u306b\u5165\u308a\u30b9\u30ca\u30c3\u30d7\u30b7\u30e7\u30c3\u30c8\u3067\u306f\u8ffd\u52a0\u6642\u70b9\u306e price02 \u3092\u30b9\u30ca\u30c3\u30d7\u30b7\u30e7\u30c3\u30c8\u3057\u3066\u4fdd\u6301\u3059\u308b\uff08\u5f8c\u306e\u5024\u5f15\u304d\u3084\u30de\u30b9\u30bf\u6539\u5b9a\u306b\u5f71\u97ff\u3055\u308c\u306a\u3044\uff09\u3002BeMart \u5074\u3067\u306f `int` \u5186\u6574\u6570 Fake\u89b3\u5bdf\u6570\u5024 1200\u301c9800; \u89b3\u5bdf\u5024 '1200', '9800'\u3002",
                                                "type": "integer",
                                                "minimum": 0,
                                                "maximum": 999999999,
                                                "example": 1200
                                            }
                                        },
                                        "additionalProperties": false,
                                        "$comment": "\u914d\u5217\u8981\u7d20\u306fFake/Resource\u3067\u89b3\u5bdf\u3055\u308c\u305f\u65e2\u77e5property\u306b\u56fa\u5b9a\u3059\u308b\u3002\u65b0\u3057\u3044\u5217\u304c\u5fc5\u8981\u306b\u306a\u3063\u305f\u5834\u5408\u306fSemantic-Ex\u89b3\u5bdf\u306b\u8ffd\u52a0\u3057\u3066schema\u3092\u66f4\u65b0\u3059\u308b\u3002"
                                    },
                                    "minItems": 0
                                },
                                "kana02": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 32,
                                    "pattern": "^[\u30a1-\u30f6\u30fc\u3000 ]*$",
                                    "title": "\u30e1\u30a4",
                                    "description": "\u540d\u306e\u30ab\u30bf\u30ab\u30ca\u8aad\u307f\u3002\u5168\u89d2\u30ab\u30bf\u30ab\u30ca\u306e\u307f\u8a31\u53ef\uff08\u3072\u3089\u304c\u306a\u5165\u529b\u6642\u306f\u81ea\u52d5\u5909\u63db\uff09\u3002\u65e5\u672c\u306e\u6c0f\u540d\u5165\u529b\u306b\u7279\u6709\u306e\u8aad\u307f\u4eee\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 3\u301c3; \u89b3\u5bdf\u5024 '\u30a2\u30ea\u30b9', '\u30cf\u30ca\u30b3', '\u30bf\u30ed\u30a6'; null 18/31\u3002",
                                    "example": "\u30a2\u30ea\u30b9"
                                },
                                "phoneNumber": {
                                    "title": "\u96fb\u8a71\u756a\u53f7",
                                    "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u3002Fake corpus\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3060\u304c\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3059\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c10; \u89b3\u5bdf\u5024 '0312345678', '0901234567', '0612345678'; null 18/33\u3002",
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                                    "minLength": 10,
                                    "maxLength": 13,
                                    "example": "0312345678"
                                },
                                "deliveryName": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 255,
                                    "title": "\u914d\u9001\u65b9\u6cd5\u540d",
                                    "description": "\u7ba1\u7406\u753b\u9762\u3067\u767b\u9332\u30fb\u66f4\u65b0\u3059\u308b\u914d\u9001\u65b9\u6cd5\u306e\u8868\u793a\u540d\u3002\u5b9f\u904b\u7528\u3067\u306f\u5e97\u8217\u72ec\u81ea\u306e\u9577\u3044\u540d\u79f0\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                                    "example": "\u30e4\u30de\u30c8\u5b85\u6025\u4fbf"
                                },
                                "deliveryTime": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 32,
                                    "title": "\u914d\u9001\u6642\u9593\u5e2f",
                                    "description": "\u9867\u5ba2\u304c\u9078\u629e\u3057\u305f\u914d\u9001\u5e0c\u671b\u6642\u9593\u5e2f\uff08\u4f8b: \u5348\u524d\u4e2d\u300114-16\u6642\uff09 Fake\u89b3\u5bdf\u6587\u5b57\u9577 3\u301c3; \u89b3\u5bdf\u5024 '\u5348\u524d\u4e2d'\u3002",
                                    "example": "\u5348\u524d\u4e2d"
                                },
                                "name02": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 80,
                                    "title": "\u540d",
                                    "description": "\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u30fb\u304a\u554f\u3044\u5408\u308f\u305b\u3067\u5171\u901a\u4f7f\u7528\u3055\u308c\u308b\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 1\u301c3; \u89b3\u5bdf\u5024 '\u30a2\u30ea\u30b9', '\u592a\u90ce', '\u6b21\u90ce', '\u82b1\u5b50', '\u4e09\u90ce', '\u6e08'\u3002",
                                    "example": "\u30a2\u30ea\u30b9"
                                },
                                "deliveryDate": {
                                    "title": "\u914d\u9001\u5e0c\u671b\u65e5",
                                    "description": "\u9867\u5ba2\u304c\u6307\u5b9a\u3057\u305f\u914d\u9001\u5e0c\u671b\u65e5 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c10; \u89b3\u5bdf\u5024 '2026-04-03'\u3002",
                                    "type": "string",
                                    "example": "2026-04-03",
                                    "$comment": "\u672a\u5165\u91d1\u30fb\u672a\u767a\u9001\u30fb\u672a\u516c\u958b\u306a\u3069\u672a\u78ba\u5b9a\u65e5\u6642\u306fEC-CUBE\u5883\u754c\u3067\u7a7a\u6587\u5b57\u3068\u3057\u3066\u73fe\u308c\u308b\u305f\u3081\u3001\u65e5\u4ed8/\u65e5\u6642\u6587\u5b57\u5217\u306b\u52a0\u3048\u3066\u7a7a\u6587\u5b57\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                                    "pattern": "^$|\\d{4}-\\d{2}-\\d{2}([ T]\\d{2}:\\d{2}:\\d{2}([+-]\\d{2}:?\\d{2}|Z)?)?$"
                                },
                                "kana01": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 32,
                                    "pattern": "^[\u30a1-\u30f6\u30fc\u3000 ]*$",
                                    "title": "\u30bb\u30a4",
                                    "description": "\u59d3\u306e\u30ab\u30bf\u30ab\u30ca\u8aad\u307f\u3002\u5168\u89d2\u30ab\u30bf\u30ab\u30ca\u306e\u307f\u8a31\u53ef\uff08\u3072\u3089\u304c\u306a\u5165\u529b\u6642\u306f\u81ea\u52d5\u5909\u63db\uff09\u3002\u65e5\u672c\u306e\u6c0f\u540d\u5165\u529b\u306b\u7279\u6709\u306e\u8aad\u307f\u4eee\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 3\u301c3; \u89b3\u5bdf\u5024 '\u30e4\u30de\u30c0', '\u30b5\u30c8\u30a6'; null 18/31\u3002",
                                    "example": "\u30e4\u30de\u30c0"
                                },
                                "name01": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 80,
                                    "title": "\u59d3",
                                    "description": "\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u30fb\u304a\u554f\u3044\u5408\u308f\u305b\u3067\u5171\u901a\u4f7f\u7528\u3055\u308c\u308b\u59d3 Fake\u89b3\u5bdf\u6587\u5b57\u9577 2\u301c2; \u89b3\u5bdf\u5024 '\u9234\u6728', '\u5c71\u7530', '\u4f50\u85e4', '\u9ad8\u6a4b', '\u9000\u4f1a'\u3002",
                                    "example": "\u9234\u6728"
                                },
                                "addr02": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 32,
                                    "title": "\u756a\u5730\u30fb\u5efa\u7269\u540d",
                                    "description": "\u756a\u5730\u30fb\u30d3\u30eb\u540d\u30fb\u90e8\u5c4b\u756a\u53f7\u7b49\u306e\u8a73\u7d30\u4f4f\u6240 Fake\u89b3\u5bdf\u6587\u5b57\u9577 5\u301c8; \u89b3\u5bdf\u5024 '\u795e\u5bae\u524d1-1-1', '\u4e38\u306e\u51852-2-2', '\u6885\u75301-1-1', '1-2-3'; null 18/33\u3002",
                                    "example": "\u795e\u5bae\u524d1-1-1"
                                },
                                "postalCode": {
                                    "title": "\u90f5\u4fbf\u756a\u53f7",
                                    "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u6709\u7121\u3092\u3069\u3061\u3089\u3082\u53d7\u3051\u5165\u308c\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 7\u301c8; \u89b3\u5bdf\u5024 '1500001', '1000005', '5300001', '530-0001'; null 18/33\u3002",
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "pattern": "^\\d{3}-?\\d{4}$",
                                    "example": "1500001"
                                },
                                "addr01": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 32,
                                    "title": "\u5e02\u533a\u753a\u6751",
                                    "description": "\u90fd\u9053\u5e9c\u770c\u3088\u308a\u4e0b\u4f4d\u306e\u5e02\u533a\u753a\u6751\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 3\u301c7; \u89b3\u5bdf\u5024 '\u6e0b\u8c37\u533a', '\u5343\u4ee3\u7530\u533a', '\u5927\u962a\u5e02\u5317\u533a', '\u5927\u962a\u5e02\u5317\u533a\u6885\u7530'; null 18/33\u3002",
                                    "example": "\u6e0b\u8c37\u533a"
                                },
                                "prefName": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 32,
                                    "title": "\u90fd\u9053\u5e9c\u770c\u540d",
                                    "description": "\u90fd\u9053\u5e9c\u770c\u306e\u8868\u793a\u540d\uff08mtb_pref.name\uff09\u3002pref\uff08mtb_pref \u3078\u306e\u6574\u6570 FK\uff09\u3092\u4f4f\u6240\u884c\u306b\u63cf\u753b\u3059\u308b\u305f\u3081\u306e\u8868\u793a\u7528\u6295\u5f71\u30d5\u30a3\u30fc\u30eb\u30c9\u3067\u3042\u308a\u3001storage \u306e\u771f\u306e leaf \u5217\u3067\u306f\u306a\u3044\u3002Phase 3 enrichment \u3067\u8ffd\u52a0\u3002SqlAddressStorage \u304c dtb_customer_address.pref_id \u2192 mtb_pref \u3092 JOIN \u3057\u3066\u5145\u586b\u3059\u308b\uff08\u69cb\u9020\u306e\u307f\u30c0\u30f3\u30d7\u3067\u306f mtb_pref \u306f\u7a7a\u306e\u305f\u3081\u3001\u672a\u30b7\u30fc\u30c9\u6642\u306f\u7a7a\u6587\u5b57\u306b degrade\uff09\u3002\u914d\u9001\u5148\u4f4f\u6240\u4e00\u89a7\u753b\u9762\uff08CustomerAddress\uff09\u304c pref \u306e\u6574\u6570 id \u3067\u306f\u306a\u304f\u90fd\u9053\u5e9c\u770c\u540d\u3092\u8868\u793a\u3059\u308b\u305f\u3081\u306b\u4f7f\u7528 Fake\u89b3\u5bdf\u6587\u5b57\u9577 3\u301c3; \u89b3\u5bdf\u5024 '\u6771\u4eac\u90fd', '\u5927\u962a\u5e9c'\u3002",
                                    "example": "\u6771\u4eac\u90fd"
                                }
                            },
                            "additionalProperties": false,
                            "$comment": "\u914d\u5217\u8981\u7d20\u306fFake/Resource\u3067\u89b3\u5bdf\u3055\u308c\u305f\u65e2\u77e5property\u306b\u56fa\u5b9a\u3059\u308b\u3002\u65b0\u3057\u3044\u5217\u304c\u5fc5\u8981\u306b\u306a\u3063\u305f\u5834\u5408\u306fSemantic-Ex\u89b3\u5bdf\u306b\u8ffd\u52a0\u3057\u3066schema\u3092\u66f4\u65b0\u3059\u308b\u3002"
                        },
                        "minItems": 0
                    },
                    "total": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "title": "\u53d7\u6ce8\u5408\u8a08",
                        "description": "\u53d7\u6ce8\u5408\u8a08\u91d1\u984d\u3002\u8a08\u7b97\u5f0f: subtotal(\u5546\u54c1\u7a0e\u8fbc\u5408\u8a08) + deliveryFeeTotal(\u9001\u6599) + charge(\u624b\u6570\u6599) - discount(\u5024\u5f15\u304d)\u3002\u30ab\u30fc\u30c8\u306etotalPrice\u3068\u306f\u5225\u30d7\u30ed\u30d1\u30c6\u30a3 Fake\u89b3\u5bdf\u6570\u5024 12700\u301c12700; \u89b3\u5bdf\u5024 '12700'\u3002",
                        "example": 12700,
                        "minimum": 0,
                        "maximum": 999999999
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "addPoint",
                    "paymentDate",
                    "orderNo",
                    "deliveryFeeTotal",
                    "orderStatus",
                    "usePoint",
                    "orderDate",
                    "mailHistories",
                    "charge",
                    "paymentTotal",
                    "tax",
                    "paymentMethod",
                    "subtotal",
                    "discount",
                    "shippings",
                    "total",
                    "csrfToken"
                ]
            },
            "GET/mypage/order-historyResponse": {
                "title": "GET /mypage/order-history response",
                "description": "GET /mypage/order-history response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "offset": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 2147483647,
                        "title": "\u958b\u59cb\u4f4d\u7f6e",
                        "description": "/mypage/order-history \u306e\u4e00\u89a7\u8868\u793a\u3092\u5236\u5fa1\u3059\u308b\u30da\u30fc\u30b8\u30f3\u30b0/\u691c\u7d22\u6761\u4ef6\u3002\u4ef6\u6570\u3001\u958b\u59cb\u4f4d\u7f6e\u3001\u4e26\u3073\u9806\u3001\u524d\u5f8c\u30ea\u30f3\u30af\u3092\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u304c\u518d\u73fe\u3059\u308b\u305f\u3081\u306e\u5024\u3002"
                    },
                    "limit": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 2147483647,
                        "title": "\u8868\u793a\u4ef6\u6570",
                        "description": "/mypage/order-history \u306e\u4e00\u89a7\u8868\u793a\u3092\u5236\u5fa1\u3059\u308b\u30da\u30fc\u30b8\u30f3\u30b0/\u691c\u7d22\u6761\u4ef6\u3002\u4ef6\u6570\u3001\u958b\u59cb\u4f4d\u7f6e\u3001\u4e26\u3073\u9806\u3001\u524d\u5f8c\u30ea\u30f3\u30af\u3092\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u304c\u518d\u73fe\u3059\u308b\u305f\u3081\u306e\u5024\u3002"
                    },
                    "orders": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u6ce8\u6587\u4e00\u89a7",
                        "description": "/mypage/order-history \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u6ce8\u6587\u4e00\u89a7\u3002\u914d\u5217\u8981\u7d20\u306fALPS\u610f\u5473\u3068Fake\u89b3\u5bdf\u306b\u57fa\u3065\u304d\u3001\u56fa\u5b9a\u3067\u304d\u306a\u3044\u52d5\u7684\u5217\u306f\u4f8b\u5916\u7406\u7531\u3092\u53f0\u5e33\u5316\u3059\u308b\u3002",
                        "items": {
                            "type": [
                                "object",
                                "null"
                            ],
                            "title": "\u6ce8\u6587\u6982\u8981",
                            "description": "/mypage/order-history \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u6ce8\u6587\u6982\u8981\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `orders` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002",
                            "properties": {
                                "orderDate": {
                                    "title": "\u6ce8\u6587\u65e5",
                                    "description": "\u6ce8\u6587\u78ba\u5b9a\u65e5\u6642 Fake\u89b3\u5bdf\u6587\u5b57\u9577 19\u301c19; \u89b3\u5bdf\u5024 '2026-04-01 10:00:00'\u3002",
                                    "type": "string",
                                    "example": "2026-04-01 10:00:00",
                                    "pattern": "^\\d{4}-\\d{2}-\\d{2}([ T]\\d{2}:\\d{2}:\\d{2}([+-]\\d{2}:?\\d{2}|Z)?)?$"
                                },
                                "paymentTotal": {
                                    "type": [
                                        "integer",
                                        "null"
                                    ],
                                    "title": "\u652f\u6255\u5408\u8a08",
                                    "description": "\u5b9f\u969b\u306e\u652f\u6255\u91d1\u984d\u3002\u521d\u671f\u5024\u306ftotal\u3068\u540c\u5024\u3067\u3001PointProcessor\u304c\u30dd\u30a4\u30f3\u30c8\u5024\u5f15\u304d\u306eOrderItem\uff08type=POINT_DISCOUNT\u3001\u4e0d\u8ab2\u7a0e\uff09\u3092\u8ffd\u52a0\u5f8c\u306bPurchaseFlow.calculateTotal()\u3067\u518d\u8a08\u7b97\u3055\u308c\u308b\u3002\u8a08\u7b97\u5f0f: total - (\u5229\u7528\u30dd\u30a4\u30f3\u30c8 x pointConversionRate) Fake\u89b3\u5bdf\u6570\u5024 12700\u301c12700; \u89b3\u5bdf\u5024 '12700'\u3002",
                                    "example": 12700,
                                    "minimum": 0,
                                    "maximum": 999999999
                                },
                                "paymentDate": {
                                    "title": "\u5165\u91d1\u65e5",
                                    "description": "\u5165\u91d1\u78ba\u8a8d\u65e5\u6642\u3002\u5165\u91d1\u6e08\u307f\u30b9\u30c6\u30fc\u30bf\u30b9\u3078\u306e\u5909\u66f4\u6642\u306b\u8a18\u9332 Fake\u89b3\u5bdf\u6587\u5b57\u9577 19\u301c19; \u89b3\u5bdf\u5024 '2026-04-01 10:00:00'\u3002",
                                    "type": "string",
                                    "example": "2026-04-01 10:00:00",
                                    "$comment": "\u672a\u5165\u91d1\u30fb\u672a\u767a\u9001\u30fb\u672a\u516c\u958b\u306a\u3069\u672a\u78ba\u5b9a\u65e5\u6642\u306fEC-CUBE\u5883\u754c\u3067\u7a7a\u6587\u5b57\u3068\u3057\u3066\u73fe\u308c\u308b\u305f\u3081\u3001\u65e5\u4ed8/\u65e5\u6642\u6587\u5b57\u5217\u306b\u52a0\u3048\u3066\u7a7a\u6587\u5b57\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                                    "pattern": "^$|\\d{4}-\\d{2}-\\d{2}([ T]\\d{2}:\\d{2}:\\d{2}([+-]\\d{2}:?\\d{2}|Z)?)?$"
                                },
                                "orderNo": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 64,
                                    "title": "\u6ce8\u6587\u756a\u53f7",
                                    "description": "\u9867\u5ba2\u5411\u3051\u306e\u6ce8\u6587\u756a\u53f7\u3002\u30d5\u30a9\u30fc\u30de\u30c3\u30c8\u306f\u30ab\u30b9\u30bf\u30de\u30a4\u30ba\u53ef\u80fd Fake\u89b3\u5bdf\u6587\u5b57\u9577 32\u301c32; \u89b3\u5bdf\u5024 'past0000000000000000000000000001'\u3002",
                                    "example": "past0000000000000000000000000001"
                                },
                                "total": {
                                    "type": [
                                        "integer",
                                        "null"
                                    ],
                                    "title": "\u53d7\u6ce8\u5408\u8a08",
                                    "description": "\u53d7\u6ce8\u5408\u8a08\u91d1\u984d\u3002\u8a08\u7b97\u5f0f: subtotal(\u5546\u54c1\u7a0e\u8fbc\u5408\u8a08) + deliveryFeeTotal(\u9001\u6599) + charge(\u624b\u6570\u6599) - discount(\u5024\u5f15\u304d)\u3002\u30ab\u30fc\u30c8\u306etotalPrice\u3068\u306f\u5225\u30d7\u30ed\u30d1\u30c6\u30a3 Fake\u89b3\u5bdf\u6570\u5024 12700\u301c12700; \u89b3\u5bdf\u5024 '12700'\u3002",
                                    "example": 12700,
                                    "minimum": 0,
                                    "maximum": 999999999
                                },
                                "orderStatus": {
                                    "title": "\u53d7\u6ce8\u30b9\u30c6\u30fc\u30bf\u30b9",
                                    "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 Fake\u89b3\u5bdf\u6570\u5024 1\u301c1; \u89b3\u5bdf\u5024 '1'\u3002",
                                    "type": "integer",
                                    "minimum": 1,
                                    "maximum": 9,
                                    "example": 1
                                }
                            },
                            "additionalProperties": false,
                            "$comment": "\u914d\u5217\u8981\u7d20\u306fFake/Resource\u3067\u89b3\u5bdf\u3055\u308c\u305f\u65e2\u77e5property\u306b\u56fa\u5b9a\u3059\u308b\u3002\u65b0\u3057\u3044\u5217\u304c\u5fc5\u8981\u306b\u306a\u3063\u305f\u5834\u5408\u306fSemantic-Ex\u89b3\u5bdf\u306b\u8ffd\u52a0\u3057\u3066schema\u3092\u66f4\u65b0\u3059\u308b\u3002"
                        },
                        "minItems": 0
                    },
                    "customerId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u4f1a\u54e1ID",
                        "description": "dtb_customer.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e Entity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\uff08\u30de\u30b9\u30a2\u30b5\u30a4\u30f3\u30e1\u30f3\u30c8\u9632\u6b62\u306e\u305f\u3081\u3001Session/AuthZ \u7d4c\u7531\u3067\u8aad\u307f\u51fa\u3057\u3001\u30ea\u30af\u30a8\u30b9\u30c8\u672c\u6587\u304b\u3089\u306f\u53d7\u3051\u53d6\u3089\u306a\u3044\uff09\u3002Favorite / Cart / Order \u306e\u6240\u6709\u8005\u30ad\u30fc\u3068\u3057\u3066\u6a2a\u65ad\u4f7f\u7528 Fake\u89b3\u5bdf\u6587\u5b57\u9577 12\u301c32; \u89b3\u5bdf\u5024 'customer-001', '0123456789abcdef0123456789abcdef', 'customer-002', 'favorite-list-customer', 'favorite-html-customer', 'fedcba9876543210fedcba9876543210', 'aaaaaaaa00000000bbbbbbbb11111111', '10000000aaaa1111bbbb2222cccc3333'\u3002",
                        "example": "customer-001",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    },
                    "orderCount": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 2147483647,
                        "title": "\u6ce8\u6587\u4ef6\u6570",
                        "description": "/mypage/order-history \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8fd4\u3059\u6ce8\u6587\u4ef6\u6570\u3002\u4e00\u89a7\u30fb\u96c6\u8a08\u30fb\u51e6\u7406\u7d50\u679c\u306e\u898f\u6a21\u3092\u8868\u3059\u975e\u8ca0\u6574\u6570\u3002"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "offset",
                    "limit",
                    "orders",
                    "customerId",
                    "orderCount"
                ]
            },
            "POST/mypage/reorderResponse": {
                "title": "POST /mypage/reorder response",
                "description": "POST /mypage/reorder response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "skippedCount": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 2147483647,
                        "title": "\u4ef6\u6570",
                        "description": "/mypage/reorder \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8fd4\u3059\u4ef6\u6570\u3002\u4e00\u89a7\u30fb\u96c6\u8a08\u30fb\u51e6\u7406\u7d50\u679c\u306e\u898f\u6a21\u3092\u8868\u3059\u975e\u8ca0\u6574\u6570\u3002"
                    },
                    "skippedProductCodes": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u51e6\u7406\u8b58\u5225\u5b50",
                        "description": "/mypage/reorder \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u51e6\u7406\u8b58\u5225\u5b50\u3002ALPS\u3001Fake\u89b3\u5bdf\u3001Resource\u5883\u754c\u306e\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305f\u696d\u52d9\u5951\u7d04\u3002",
                        "items": {
                            "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                            "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                            "type": "string",
                            "minLength": 1,
                            "maxLength": 64,
                            "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                            "example": "sample-001"
                        },
                        "minItems": 0
                    },
                    "addedCount": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 2147483647,
                        "title": "\u4ef6\u6570",
                        "description": "/mypage/reorder \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8fd4\u3059\u4ef6\u6570\u3002\u4e00\u89a7\u30fb\u96c6\u8a08\u30fb\u51e6\u7406\u7d50\u679c\u306e\u898f\u6a21\u3092\u8868\u3059\u975e\u8ca0\u6574\u6570\u3002"
                    },
                    "cartKeys": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u51e6\u7406\u4e00\u89a7",
                        "description": "/mypage/reorder \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u51e6\u7406\u4e00\u89a7\u3002ALPS\u3001Fake\u89b3\u5bdf\u3001Resource\u5883\u754c\u306e\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305f\u696d\u52d9\u5951\u7d04\u3002",
                        "items": {
                            "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                            "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                            "type": "string",
                            "minLength": 3,
                            "maxLength": 128,
                            "pattern": "^.+_[0-9]+$",
                            "example": "session-prefix-1_1"
                        },
                        "minItems": 0
                    },
                    "orderNo": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 64,
                        "title": "\u6ce8\u6587\u756a\u53f7",
                        "description": "\u9867\u5ba2\u5411\u3051\u306e\u6ce8\u6587\u756a\u53f7\u3002\u30d5\u30a9\u30fc\u30de\u30c3\u30c8\u306f\u30ab\u30b9\u30bf\u30de\u30a4\u30ba\u53ef\u80fd Fake\u89b3\u5bdf\u6587\u5b57\u9577 32\u301c32; \u89b3\u5bdf\u5024 'past0000000000000000000000000001'\u3002",
                        "example": "past0000000000000000000000000001"
                    },
                    "customerId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u4f1a\u54e1ID",
                        "description": "dtb_customer.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e Entity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\uff08\u30de\u30b9\u30a2\u30b5\u30a4\u30f3\u30e1\u30f3\u30c8\u9632\u6b62\u306e\u305f\u3081\u3001Session/AuthZ \u7d4c\u7531\u3067\u8aad\u307f\u51fa\u3057\u3001\u30ea\u30af\u30a8\u30b9\u30c8\u672c\u6587\u304b\u3089\u306f\u53d7\u3051\u53d6\u3089\u306a\u3044\uff09\u3002Favorite / Cart / Order \u306e\u6240\u6709\u8005\u30ad\u30fc\u3068\u3057\u3066\u6a2a\u65ad\u4f7f\u7528 Fake\u89b3\u5bdf\u6587\u5b57\u9577 12\u301c32; \u89b3\u5bdf\u5024 'customer-001', '0123456789abcdef0123456789abcdef', 'customer-002', 'favorite-list-customer', 'favorite-html-customer', 'fedcba9876543210fedcba9876543210', 'aaaaaaaa00000000bbbbbbbb11111111', '10000000aaaa1111bbbb2222cccc3333'\u3002",
                        "example": "customer-001",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "skippedCount",
                    "skippedProductCodes",
                    "addedCount",
                    "cartKeys",
                    "orderNo",
                    "customerId"
                ]
            },
            "GET/mypage/withdrawResponse": {
                "title": "GET /mypage/withdraw response",
                "description": "GET /mypage/withdraw response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "name01": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 80,
                        "title": "\u59d3",
                        "description": "\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u30fb\u304a\u554f\u3044\u5408\u308f\u305b\u3067\u5171\u901a\u4f7f\u7528\u3055\u308c\u308b\u59d3 Fake\u89b3\u5bdf\u6587\u5b57\u9577 2\u301c2; \u89b3\u5bdf\u5024 '\u9234\u6728', '\u5c71\u7530', '\u4f50\u85e4', '\u9ad8\u6a4b', '\u9000\u4f1a'\u3002",
                        "example": "\u9234\u6728"
                    },
                    "fields": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u9759\u7684\u8868\u793a\u30d5\u30a3\u30fc\u30eb\u30c9",
                        "description": "/mypage/withdraw \u3067\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u3078\u6e21\u3059\u8868\u793a\u7528\u30d5\u30a3\u30fc\u30eb\u30c9\u96c6\u5408\u3002\u30d5\u30a9\u30fc\u30e0\u5165\u529b\u5024\u3067\u306f\u306a\u304f\u753b\u9762\u6587\u8108\u30c7\u30fc\u30bf\u3002",
                        "items": {
                            "type": "string",
                            "title": "\u8868\u793a\u30d5\u30a3\u30fc\u30eb\u30c9",
                            "minLength": 0,
                            "maxLength": 255,
                            "description": "/mypage/withdraw \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u4f1a\u54e1\u884c\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `fields` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002"
                        }
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u3002\u4f1a\u54e1\u767b\u9332\u30fb\u30ed\u30b0\u30a4\u30f3\u30fb\u901a\u77e5\u3067\u5171\u901a\u306b\u4f7f\u3046\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 15\u301c58; \u89b3\u5bdf\u5024 'bob@example.com', 'login-test@example.com', 'alice@example.com', 'carol@example.com', 'provisional@example.com', 'withdrawn-30000000aaaa3333bbbb4444cccc5555@example.invalid'\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "name02": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 80,
                        "title": "\u540d",
                        "description": "\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u30fb\u304a\u554f\u3044\u5408\u308f\u305b\u3067\u5171\u901a\u4f7f\u7528\u3055\u308c\u308b\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 1\u301c3; \u89b3\u5bdf\u5024 '\u30a2\u30ea\u30b9', '\u592a\u90ce', '\u6b21\u90ce', '\u82b1\u5b50', '\u4e09\u90ce', '\u6e08'\u3002",
                        "example": "\u30a2\u30ea\u30b9"
                    },
                    "submitTo": {
                        "type": [
                            "object",
                            "null"
                        ],
                        "title": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5148\u30ea\u30f3\u30af",
                        "description": "/mypage/withdraw \u306e\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u306b\u4f7f\u3046\u9001\u4fe1\u5148\u30ea\u30f3\u30af\u3002HTTP\u30e1\u30bd\u30c3\u30c9\u3068\u9077\u79fb\u5148\u3092\u307e\u3068\u3081\u3001unsafe\u64cd\u4f5c\u306e\u5165\u53e3\u3092\u660e\u793a\u3059\u308b\u3002",
                        "properties": {
                            "href": {
                                "title": "\u30ea\u30f3\u30afURI\u53c2\u7167\uff08URI\u53c2\u7167\uff09",
                                "description": "\u30da\u30fc\u30b8\u306eURL\u30d1\u30b9\uff08Symfony\u30eb\u30fc\u30c8\u540d\u3002\u4f8b: homepage, product_list\uff09",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "method": {
                                "type": [
                                    "string",
                                    "null"
                                ],
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ],
                                "title": "HTTP\u30e1\u30bd\u30c3\u30c9",
                                "description": "/mypage/withdraw \u306e\u30ea\u30f3\u30af\u307e\u305f\u306f\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u3067\u4f7f\u3046HTTP\u30e1\u30bd\u30c3\u30c9\u3002GET/POST\u7b49\u306e\u9077\u79fb\u65b9\u6cd5\u3092\u8868\u3059\u3002"
                            }
                        },
                        "additionalProperties": false,
                        "required": [
                            "href",
                            "method"
                        ]
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "\u3053\u306e\u30ec\u30b9\u30dd\u30f3\u30b9/\u64cd\u4f5c\u304c\u5bfe\u5fdc\u3059\u308bALPS\u9077\u79fbID\u3002\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u306e\u72b6\u614b\u9077\u79fb\u8ffd\u8de1\u306b\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "csrfToken": {
                        "title": "\u51e6\u7406\u8b58\u5225\u5b50",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u306e\u507d\u9020\u3092\u9632\u3050\u305f\u3081\u306b\u9001\u4fe1\u5143\u753b\u9762\u3067\u767a\u884c\u3055\u308c\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "customerId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u4f1a\u54e1ID",
                        "description": "dtb_customer.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e Entity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\uff08\u30de\u30b9\u30a2\u30b5\u30a4\u30f3\u30e1\u30f3\u30c8\u9632\u6b62\u306e\u305f\u3081\u3001Session/AuthZ \u7d4c\u7531\u3067\u8aad\u307f\u51fa\u3057\u3001\u30ea\u30af\u30a8\u30b9\u30c8\u672c\u6587\u304b\u3089\u306f\u53d7\u3051\u53d6\u3089\u306a\u3044\uff09\u3002Favorite / Cart / Order \u306e\u6240\u6709\u8005\u30ad\u30fc\u3068\u3057\u3066\u6a2a\u65ad\u4f7f\u7528 Fake\u89b3\u5bdf\u6587\u5b57\u9577 12\u301c32; \u89b3\u5bdf\u5024 'customer-001', '0123456789abcdef0123456789abcdef', 'customer-002', 'favorite-list-customer', 'favorite-html-customer', 'fedcba9876543210fedcba9876543210', 'aaaaaaaa00000000bbbbbbbb11111111', '10000000aaaa1111bbbb2222cccc3333'\u3002",
                        "example": "customer-001",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "name01",
                    "email",
                    "name02",
                    "transitionId",
                    "customerId",
                    "csrfToken"
                ]
            },
            "POST/mypage/withdrawResponse": {
                "title": "POST /mypage/withdraw response",
                "description": "POST /mypage/withdraw response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "message": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u4f1a\u54e1\u30e1\u30c3\u30bb\u30fc\u30b8",
                        "description": "/mypage/withdraw \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u51e6\u7406\u7d50\u679c\u30e1\u30c3\u30bb\u30fc\u30b8\u3002\u6ce8\u6587\u6642\u304a\u554f\u3044\u5408\u308f\u305b\u6b04\u3067\u306f\u306a\u304f\u3001\u753b\u9762\u9077\u79fb\u3084\u5b8c\u4e86\u8868\u793a\u306e\u305f\u3081\u306e\u901a\u77e5\u6587\u3002",
                        "example": "\u914d\u9001\u306f\u5e73\u65e5\u5e0c\u671b\u3067\u3059\u3002"
                    },
                    "cleared": {
                        "type": [
                            "boolean",
                            "null"
                        ],
                        "title": "\u51e6\u7406\u72b6\u614b\u30d5\u30e9\u30b0",
                        "description": "/mypage/withdraw \u306e\u51e6\u7406\u72b6\u614b\u3092\u793a\u3059\u51e6\u7406\u72b6\u614b\u30d5\u30e9\u30b0\u3002\u753b\u9762\u8868\u793a\u3084\u51aa\u7b49\u51e6\u7406\u7d50\u679c\u306e\u5206\u5c90\u306b\u4f7f\u3046\u771f\u507d\u5024\u3002"
                    },
                    "customerId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u4f1a\u54e1ID",
                        "description": "dtb_customer.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e Entity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\uff08\u30de\u30b9\u30a2\u30b5\u30a4\u30f3\u30e1\u30f3\u30c8\u9632\u6b62\u306e\u305f\u3081\u3001Session/AuthZ \u7d4c\u7531\u3067\u8aad\u307f\u51fa\u3057\u3001\u30ea\u30af\u30a8\u30b9\u30c8\u672c\u6587\u304b\u3089\u306f\u53d7\u3051\u53d6\u3089\u306a\u3044\uff09\u3002Favorite / Cart / Order \u306e\u6240\u6709\u8005\u30ad\u30fc\u3068\u3057\u3066\u6a2a\u65ad\u4f7f\u7528 Fake\u89b3\u5bdf\u6587\u5b57\u9577 12\u301c32; \u89b3\u5bdf\u5024 'customer-001', '0123456789abcdef0123456789abcdef', 'customer-002', 'favorite-list-customer', 'favorite-html-customer', 'fedcba9876543210fedcba9876543210', 'aaaaaaaa00000000bbbbbbbb11111111', '10000000aaaa1111bbbb2222cccc3333'\u3002",
                        "example": "customer-001",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "cleared",
                    "customerId"
                ]
            },
            "GET/mypage/withdraw-completeResponse": {
                "title": "GET /mypage/withdraw-complete response",
                "description": "GET /mypage/withdraw-complete response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "fields": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u9759\u7684\u8868\u793a\u30d5\u30a3\u30fc\u30eb\u30c9",
                        "description": "/mypage/withdraw-complete \u3067\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u3078\u6e21\u3059\u8868\u793a\u7528\u30d5\u30a3\u30fc\u30eb\u30c9\u96c6\u5408\u3002\u30d5\u30a9\u30fc\u30e0\u5165\u529b\u5024\u3067\u306f\u306a\u304f\u753b\u9762\u6587\u8108\u30c7\u30fc\u30bf\u3002",
                        "items": {
                            "type": "string",
                            "title": "\u8868\u793a\u30d5\u30a3\u30fc\u30eb\u30c9",
                            "minLength": 0,
                            "maxLength": 255,
                            "description": "/mypage/withdraw-complete \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u4f1a\u54e1\u884c\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `fields` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002"
                        }
                    },
                    "submitTo": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 255,
                        "title": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5148\u30ea\u30f3\u30af",
                        "description": "/mypage/withdraw-complete \u306e\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u306b\u4f7f\u3046\u9001\u4fe1\u5148\u30ea\u30f3\u30af\u3002HTTP\u30e1\u30bd\u30c3\u30c9\u3068\u9077\u79fb\u5148\u3092\u307e\u3068\u3081\u3001unsafe\u64cd\u4f5c\u306e\u5165\u53e3\u3092\u660e\u793a\u3059\u308b\u3002"
                    },
                    "staticContent": {
                        "type": [
                            "object",
                            "null"
                        ],
                        "title": "\u9759\u7684\u30b3\u30f3\u30c6\u30f3\u30c4",
                        "description": "/mypage/withdraw-complete \u3067\u8868\u793a\u3059\u308b\u898f\u7d04\u30fb\u30d8\u30eb\u30d7\u30fb\u30a8\u30e9\u30fc\u7b49\u306e\u9759\u7684\u30da\u30fc\u30b8\u672c\u6587\u3068\u30bb\u30af\u30b7\u30e7\u30f3\u60c5\u5831\u3002",
                        "properties": {
                            "title": {
                                "type": [
                                    "string",
                                    "null"
                                ],
                                "minLength": 0,
                                "maxLength": 255,
                                "title": "\u51e6\u7406\u30bf\u30a4\u30c8\u30eb",
                                "description": "/mypage/withdraw-complete \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8868\u793a\u307e\u305f\u306f\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u63cf\u753b\u306b\u4f7f\u3046\u51e6\u7406\u30bf\u30a4\u30c8\u30eb\u3002\u540c\u540dproperty\u3067\u3082\u89aa\u6587\u8108 `root` \u306b\u3088\u3063\u3066\u610f\u5473\u3092\u5206\u3051\u308b\u3002"
                            },
                            "page": {
                                "type": [
                                    "string",
                                    "null"
                                ],
                                "minLength": 0,
                                "maxLength": 255,
                                "title": "\u30da\u30fc\u30b8\u8b58\u5225\u5b50",
                                "description": "/mypage/withdraw-complete \u306e\u9759\u7684\u30b3\u30f3\u30c6\u30f3\u30c4\u3067\u8868\u793a\u5bfe\u8c61\u30da\u30fc\u30b8\u3092\u8b58\u5225\u3059\u308b\u5024\u3002\u30da\u30fc\u30b8\u756a\u53f7\u3067\u306f\u306a\u3044\u3002"
                            }
                        },
                        "additionalProperties": false,
                        "required": [
                            "title",
                            "page"
                        ]
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "\u3053\u306e\u30ec\u30b9\u30dd\u30f3\u30b9/\u64cd\u4f5c\u304c\u5bfe\u5fdc\u3059\u308bALPS\u9077\u79fbID\u3002\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u306e\u72b6\u614b\u9077\u79fb\u8ffd\u8de1\u306b\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "transitionId"
                ]
            },
            "GET/mypage/withdraw-confirmResponse": {
                "title": "GET /mypage/withdraw-confirm response",
                "description": "GET /mypage/withdraw-confirm response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "fields": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u9759\u7684\u8868\u793a\u30d5\u30a3\u30fc\u30eb\u30c9",
                        "description": "/mypage/withdraw-confirm \u3067\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u3078\u6e21\u3059\u8868\u793a\u7528\u30d5\u30a3\u30fc\u30eb\u30c9\u96c6\u5408\u3002\u30d5\u30a9\u30fc\u30e0\u5165\u529b\u5024\u3067\u306f\u306a\u304f\u753b\u9762\u6587\u8108\u30c7\u30fc\u30bf\u3002",
                        "items": {
                            "type": "string",
                            "title": "\u8868\u793a\u30d5\u30a3\u30fc\u30eb\u30c9",
                            "minLength": 0,
                            "maxLength": 255,
                            "description": "/mypage/withdraw-confirm \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u4f1a\u54e1\u884c\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `fields` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002"
                        }
                    },
                    "submitTo": {
                        "type": [
                            "object",
                            "null"
                        ],
                        "title": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5148\u30ea\u30f3\u30af",
                        "description": "/mypage/withdraw-confirm \u306e\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u306b\u4f7f\u3046\u9001\u4fe1\u5148\u30ea\u30f3\u30af\u3002HTTP\u30e1\u30bd\u30c3\u30c9\u3068\u9077\u79fb\u5148\u3092\u307e\u3068\u3081\u3001unsafe\u64cd\u4f5c\u306e\u5165\u53e3\u3092\u660e\u793a\u3059\u308b\u3002",
                        "properties": {
                            "href": {
                                "title": "\u30ea\u30f3\u30afURI\u53c2\u7167\uff08URI\u53c2\u7167\uff09",
                                "description": "\u30da\u30fc\u30b8\u306eURL\u30d1\u30b9\uff08Symfony\u30eb\u30fc\u30c8\u540d\u3002\u4f8b: homepage, product_list\uff09",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "method": {
                                "type": [
                                    "string",
                                    "null"
                                ],
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ],
                                "title": "HTTP\u30e1\u30bd\u30c3\u30c9",
                                "description": "/mypage/withdraw-confirm \u306e\u30ea\u30f3\u30af\u307e\u305f\u306f\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u3067\u4f7f\u3046HTTP\u30e1\u30bd\u30c3\u30c9\u3002GET/POST\u7b49\u306e\u9077\u79fb\u65b9\u6cd5\u3092\u8868\u3059\u3002"
                            }
                        },
                        "additionalProperties": false,
                        "required": [
                            "href",
                            "method"
                        ]
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "\u3053\u306e\u30ec\u30b9\u30dd\u30f3\u30b9/\u64cd\u4f5c\u304c\u5bfe\u5fdc\u3059\u308bALPS\u9077\u79fbID\u3002\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u306e\u72b6\u614b\u9077\u79fb\u8ffd\u8de1\u306b\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "csrfToken": {
                        "title": "\u51e6\u7406\u8b58\u5225\u5b50",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u306e\u507d\u9020\u3092\u9632\u3050\u305f\u3081\u306b\u9001\u4fe1\u5143\u753b\u9762\u3067\u767a\u884c\u3055\u308c\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "transitionId",
                    "csrfToken"
                ]
            },
            "POST/shopping/checkoutResponse": {
                "title": "POST /shopping/checkout response",
                "description": "POST /shopping/checkout response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "addPoint": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "title": "\u4ed8\u4e0e\u30dd\u30a4\u30f3\u30c8",
                        "description": "\u6ce8\u6587\u306b\u3088\u308a\u4ed8\u4e0e\u3055\u308c\u308b\u30dd\u30a4\u30f3\u30c8\u6570\u3002\u5546\u54c1\u5358\u4fa1(\u7a0e\u629c) x pointRate x \u6570\u91cf\u3067\u660e\u7d30\u3054\u3068\u306b\u8a08\u7b97\u3057\u5408\u7b97\u3002\u5229\u7528\u30dd\u30a4\u30f3\u30c8\u5206\u3092\u63a7\u9664\u3002\u767a\u9001\u6e08\u307f(DELIVERED)\u9077\u79fb\u6642\u306b\u4f1a\u54e1\u306epoint\u306b\u52a0\u7b97 Fake\u89b3\u5bdf\u6570\u5024 0\u301c127; \u89b3\u5bdf\u5024 '127', '0'\u3002",
                        "example": 127,
                        "minimum": 0,
                        "maximum": 2147483647
                    },
                    "orderDate": {
                        "title": "\u6ce8\u6587\u65e5",
                        "description": "\u6ce8\u6587\u78ba\u5b9a\u65e5\u6642 Fake\u89b3\u5bdf\u6587\u5b57\u9577 19\u301c19; \u89b3\u5bdf\u5024 '2026-04-01 10:00:00'\u3002",
                        "type": "string",
                        "example": "2026-04-01 10:00:00",
                        "pattern": "^\\d{4}-\\d{2}-\\d{2}([ T]\\d{2}:\\d{2}:\\d{2}([+-]\\d{2}:?\\d{2}|Z)?)?$"
                    },
                    "paymentTotal": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "title": "\u652f\u6255\u5408\u8a08",
                        "description": "\u5b9f\u969b\u306e\u652f\u6255\u91d1\u984d\u3002\u521d\u671f\u5024\u306ftotal\u3068\u540c\u5024\u3067\u3001PointProcessor\u304c\u30dd\u30a4\u30f3\u30c8\u5024\u5f15\u304d\u306eOrderItem\uff08type=POINT_DISCOUNT\u3001\u4e0d\u8ab2\u7a0e\uff09\u3092\u8ffd\u52a0\u5f8c\u306bPurchaseFlow.calculateTotal()\u3067\u518d\u8a08\u7b97\u3055\u308c\u308b\u3002\u8a08\u7b97\u5f0f: total - (\u5229\u7528\u30dd\u30a4\u30f3\u30c8 x pointConversionRate) Fake\u89b3\u5bdf\u6570\u5024 12700\u301c12700; \u89b3\u5bdf\u5024 '12700'\u3002",
                        "example": 12700,
                        "minimum": 0,
                        "maximum": 999999999
                    },
                    "completeMessage": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 255,
                        "title": "\u6ce8\u6587\u5b8c\u4e86\u30e1\u30c3\u30bb\u30fc\u30b8",
                        "description": "\u6ce8\u6587\u5b8c\u4e86\u753b\u9762\u306b\u8868\u793a\u3059\u308b\u30e1\u30c3\u30bb\u30fc\u30b8\u3002\u4e3b\u306b\u6c7a\u6e08\u30d7\u30e9\u30b0\u30a4\u30f3\u304c\u8a2d\u5b9a\u3059\u308b\u30ab\u30b9\u30bf\u30e0\u30e1\u30c3\u30bb\u30fc\u30b8\u3002\u8907\u6570\u30d7\u30e9\u30b0\u30a4\u30f3\u304b\u3089\u306e\u5229\u7528\u3092\u60f3\u5b9a\u3057appendCompleteMesssage()\u3067\u8ffd\u8a18\u3059\u308b\u3002HTML\u4f7f\u7528\u53ef"
                    },
                    "paymentDate": {
                        "title": "\u5165\u91d1\u65e5",
                        "description": "\u5165\u91d1\u78ba\u8a8d\u65e5\u6642\u3002\u5165\u91d1\u6e08\u307f\u30b9\u30c6\u30fc\u30bf\u30b9\u3078\u306e\u5909\u66f4\u6642\u306b\u8a18\u9332 Fake\u89b3\u5bdf\u6587\u5b57\u9577 19\u301c19; \u89b3\u5bdf\u5024 '2026-04-01 10:00:00'\u3002",
                        "type": "string",
                        "example": "2026-04-01 10:00:00",
                        "$comment": "\u672a\u5165\u91d1\u30fb\u672a\u767a\u9001\u30fb\u672a\u516c\u958b\u306a\u3069\u672a\u78ba\u5b9a\u65e5\u6642\u306fEC-CUBE\u5883\u754c\u3067\u7a7a\u6587\u5b57\u3068\u3057\u3066\u73fe\u308c\u308b\u305f\u3081\u3001\u65e5\u4ed8/\u65e5\u6642\u6587\u5b57\u5217\u306b\u52a0\u3048\u3066\u7a7a\u6587\u5b57\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "pattern": "^$|\\d{4}-\\d{2}-\\d{2}([ T]\\d{2}:\\d{2}:\\d{2}([+-]\\d{2}:?\\d{2}|Z)?)?$"
                    },
                    "orderNo": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 64,
                        "title": "\u6ce8\u6587\u756a\u53f7",
                        "description": "\u9867\u5ba2\u5411\u3051\u306e\u6ce8\u6587\u756a\u53f7\u3002\u30d5\u30a9\u30fc\u30de\u30c3\u30c8\u306f\u30ab\u30b9\u30bf\u30de\u30a4\u30ba\u53ef\u80fd Fake\u89b3\u5bdf\u6587\u5b57\u9577 32\u301c32; \u89b3\u5bdf\u5024 'past0000000000000000000000000001'\u3002",
                        "example": "past0000000000000000000000000001"
                    },
                    "customerId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u4f1a\u54e1ID",
                        "description": "dtb_customer.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e Entity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\uff08\u30de\u30b9\u30a2\u30b5\u30a4\u30f3\u30e1\u30f3\u30c8\u9632\u6b62\u306e\u305f\u3081\u3001Session/AuthZ \u7d4c\u7531\u3067\u8aad\u307f\u51fa\u3057\u3001\u30ea\u30af\u30a8\u30b9\u30c8\u672c\u6587\u304b\u3089\u306f\u53d7\u3051\u53d6\u3089\u306a\u3044\uff09\u3002Favorite / Cart / Order \u306e\u6240\u6709\u8005\u30ad\u30fc\u3068\u3057\u3066\u6a2a\u65ad\u4f7f\u7528 Fake\u89b3\u5bdf\u6587\u5b57\u9577 12\u301c32; \u89b3\u5bdf\u5024 'customer-001', '0123456789abcdef0123456789abcdef', 'customer-002', 'favorite-list-customer', 'favorite-html-customer', 'fedcba9876543210fedcba9876543210', 'aaaaaaaa00000000bbbbbbbb11111111', '10000000aaaa1111bbbb2222cccc3333'\u3002",
                        "example": "customer-001",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    },
                    "total": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "title": "\u53d7\u6ce8\u5408\u8a08",
                        "description": "\u53d7\u6ce8\u5408\u8a08\u91d1\u984d\u3002\u8a08\u7b97\u5f0f: subtotal(\u5546\u54c1\u7a0e\u8fbc\u5408\u8a08) + deliveryFeeTotal(\u9001\u6599) + charge(\u624b\u6570\u6599) - discount(\u5024\u5f15\u304d)\u3002\u30ab\u30fc\u30c8\u306etotalPrice\u3068\u306f\u5225\u30d7\u30ed\u30d1\u30c6\u30a3 Fake\u89b3\u5bdf\u6570\u5024 12700\u301c12700; \u89b3\u5bdf\u5024 '12700'\u3002",
                        "example": 12700,
                        "minimum": 0,
                        "maximum": 999999999
                    },
                    "orderStatus": {
                        "title": "\u53d7\u6ce8\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 Fake\u89b3\u5bdf\u6570\u5024 1\u301c1; \u89b3\u5bdf\u5024 '1'\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "addPoint",
                    "orderDate",
                    "paymentTotal",
                    "completeMessage",
                    "paymentDate",
                    "orderNo",
                    "customerId",
                    "total",
                    "orderStatus"
                ]
            },
            "GET/shopping/completeResponse": {
                "title": "GET /shopping/complete response",
                "description": "GET /shopping/complete response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "completeMessage": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 255,
                        "title": "\u6ce8\u6587\u5b8c\u4e86\u30e1\u30c3\u30bb\u30fc\u30b8",
                        "description": "\u6ce8\u6587\u5b8c\u4e86\u753b\u9762\u306b\u8868\u793a\u3059\u308b\u30e1\u30c3\u30bb\u30fc\u30b8\u3002\u4e3b\u306b\u6c7a\u6e08\u30d7\u30e9\u30b0\u30a4\u30f3\u304c\u8a2d\u5b9a\u3059\u308b\u30ab\u30b9\u30bf\u30e0\u30e1\u30c3\u30bb\u30fc\u30b8\u3002\u8907\u6570\u30d7\u30e9\u30b0\u30a4\u30f3\u304b\u3089\u306e\u5229\u7528\u3092\u60f3\u5b9a\u3057appendCompleteMesssage()\u3067\u8ffd\u8a18\u3059\u308b\u3002HTML\u4f7f\u7528\u53ef"
                    },
                    "staticContent": {
                        "type": [
                            "object",
                            "null"
                        ],
                        "title": "\u9759\u7684\u30b3\u30f3\u30c6\u30f3\u30c4",
                        "description": "/shopping/complete \u3067\u8868\u793a\u3059\u308b\u898f\u7d04\u30fb\u30d8\u30eb\u30d7\u30fb\u30a8\u30e9\u30fc\u7b49\u306e\u9759\u7684\u30da\u30fc\u30b8\u672c\u6587\u3068\u30bb\u30af\u30b7\u30e7\u30f3\u60c5\u5831\u3002",
                        "properties": {
                            "title": {
                                "type": [
                                    "string",
                                    "null"
                                ],
                                "minLength": 0,
                                "maxLength": 255,
                                "title": "\u51e6\u7406\u30bf\u30a4\u30c8\u30eb",
                                "description": "/shopping/complete \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8868\u793a\u307e\u305f\u306f\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u63cf\u753b\u306b\u4f7f\u3046\u51e6\u7406\u30bf\u30a4\u30c8\u30eb\u3002\u540c\u540dproperty\u3067\u3082\u89aa\u6587\u8108 `root` \u306b\u3088\u3063\u3066\u610f\u5473\u3092\u5206\u3051\u308b\u3002"
                            },
                            "page": {
                                "type": [
                                    "string",
                                    "null"
                                ],
                                "minLength": 0,
                                "maxLength": 255,
                                "title": "\u30da\u30fc\u30b8\u8b58\u5225\u5b50",
                                "description": "/shopping/complete \u306e\u9759\u7684\u30b3\u30f3\u30c6\u30f3\u30c4\u3067\u8868\u793a\u5bfe\u8c61\u30da\u30fc\u30b8\u3092\u8b58\u5225\u3059\u308b\u5024\u3002\u30da\u30fc\u30b8\u756a\u53f7\u3067\u306f\u306a\u3044\u3002"
                            }
                        },
                        "additionalProperties": false,
                        "required": [
                            "title",
                            "page"
                        ]
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "\u3053\u306e\u30ec\u30b9\u30dd\u30f3\u30b9/\u64cd\u4f5c\u304c\u5bfe\u5fdc\u3059\u308bALPS\u9077\u79fbID\u3002\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u306e\u72b6\u614b\u9077\u79fb\u8ffd\u8de1\u306b\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "orderNo": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 64,
                        "title": "\u6ce8\u6587\u756a\u53f7",
                        "description": "\u9867\u5ba2\u5411\u3051\u306e\u6ce8\u6587\u756a\u53f7\u3002\u30d5\u30a9\u30fc\u30de\u30c3\u30c8\u306f\u30ab\u30b9\u30bf\u30de\u30a4\u30ba\u53ef\u80fd Fake\u89b3\u5bdf\u6587\u5b57\u9577 32\u301c32; \u89b3\u5bdf\u5024 'past0000000000000000000000000001'\u3002",
                        "example": "past0000000000000000000000000001"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "completeMessage",
                    "transitionId",
                    "orderNo"
                ]
            },
            "GET/shopping/confirmResponse": {
                "title": "GET /shopping/confirm response",
                "description": "GET /shopping/confirm response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "addPoint": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "title": "\u4ed8\u4e0e\u30dd\u30a4\u30f3\u30c8",
                        "description": "\u6ce8\u6587\u306b\u3088\u308a\u4ed8\u4e0e\u3055\u308c\u308b\u30dd\u30a4\u30f3\u30c8\u6570\u3002\u5546\u54c1\u5358\u4fa1(\u7a0e\u629c) x pointRate x \u6570\u91cf\u3067\u660e\u7d30\u3054\u3068\u306b\u8a08\u7b97\u3057\u5408\u7b97\u3002\u5229\u7528\u30dd\u30a4\u30f3\u30c8\u5206\u3092\u63a7\u9664\u3002\u767a\u9001\u6e08\u307f(DELIVERED)\u9077\u79fb\u6642\u306b\u4f1a\u54e1\u306epoint\u306b\u52a0\u7b97 Fake\u89b3\u5bdf\u6570\u5024 0\u301c127; \u89b3\u5bdf\u5024 '127', '0'\u3002",
                        "example": 127,
                        "minimum": 0,
                        "maximum": 2147483647
                    },
                    "items": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u660e\u7d30\u4e00\u89a7",
                        "description": "/shopping/confirm \u306e\u89aa\u30aa\u30d6\u30b8\u30a7\u30af\u30c8 `` \u306b\u542b\u307e\u308c\u308b\u660e\u7d30\u914d\u5217\u3002\u5546\u54c1\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u306e\u6587\u8108\u3067\u89e3\u91c8\u3059\u308b\u3002",
                        "items": {
                            "type": [
                                "object",
                                "null"
                            ],
                            "title": "\u660e\u7d30",
                            "description": "/shopping/confirm \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u660e\u7d30\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `items` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002",
                            "properties": {
                                "productName": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 128,
                                    "title": "\u5546\u54c1\u540d",
                                    "description": "\u5546\u54c1\u306e\u8868\u793a\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 6\u301c17\u3002",
                                    "example": "\u30b5\u30f3\u30d7\u30eb\u5546\u54c1 A"
                                },
                                "productCode": {
                                    "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                                    "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 \u5546\u54c1\u3092\u8b58\u5225\u3059\u308bSKU\u3002Fake corpus\u3067\u306fASCII\u82f1\u6570\u30fb\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3067\u3001\u53d7\u6ce8\u660e\u7d30/\u30ab\u30fc\u30c8\u660e\u7d30\u306e\u7d50\u5408\u30ad\u30fc\u306b\u306a\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c26\u3002",
                                    "type": "string",
                                    "minLength": 0,
                                    "maxLength": 64,
                                    "example": "sample-001"
                                },
                                "quantity": {
                                    "title": "\u6570\u91cf",
                                    "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 Fake\u89b3\u5bdf\u6570\u5024 1\u301c3; \u89b3\u5bdf\u5024 '1', '2', '3'\u3002",
                                    "type": "integer",
                                    "minimum": 1,
                                    "maximum": 999,
                                    "example": 1
                                },
                                "totalPrice": {
                                    "title": "\u30ab\u30fc\u30c8\u5408\u8a08\u91d1\u984d",
                                    "description": "\u30ab\u30fc\u30c8\u5185\u306e\u7a0e\u8fbc\u5408\u8a08\u91d1\u984d\u3002PurchaseFlow.calculateTotal()\u3067\u6bce\u56de\u518d\u8a08\u7b97\u3055\u308c\u308b\u30ad\u30e3\u30c3\u30b7\u30e5\u5024\u3002\u53d7\u6ce8\u306etotal\u3068\u306f\u5225\u30d7\u30ed\u30d1\u30c6\u30a3 Fake\u89b3\u5bdf\u6570\u5024 0\u301c3600; \u89b3\u5bdf\u5024 '0', '1500', '3600'\u3002",
                                    "type": "integer",
                                    "minimum": 0,
                                    "maximum": 999999999,
                                    "example": 0
                                },
                                "unitPrice": {
                                    "title": "\u5358\u4fa1\uff08\u8868\u793a/\u8a08\u7b97\u7528\uff09",
                                    "description": "\u660e\u7d301\u4ef6\u3042\u305f\u308a\u306e\u5358\u4fa1\u3002\u53d7\u6ce8/\u30ab\u30fc\u30c8\u660e\u7d30\u30fb\u304a\u6c17\u306b\u5165\u308a\u30b9\u30ca\u30c3\u30d7\u30b7\u30e7\u30c3\u30c8\u3067\u306f\u8ffd\u52a0\u6642\u70b9\u306e price02 \u3092\u30b9\u30ca\u30c3\u30d7\u30b7\u30e7\u30c3\u30c8\u3057\u3066\u4fdd\u6301\u3059\u308b\uff08\u5f8c\u306e\u5024\u5f15\u304d\u3084\u30de\u30b9\u30bf\u6539\u5b9a\u306b\u5f71\u97ff\u3055\u308c\u306a\u3044\uff09\u3002BeMart \u5074\u3067\u306f `int` \u5186\u6574\u6570 Fake\u89b3\u5bdf\u6570\u5024 1200\u301c9800; \u89b3\u5bdf\u5024 '1200', '9800'\u3002",
                                    "type": "integer",
                                    "minimum": 0,
                                    "maximum": 999999999,
                                    "example": 1200
                                }
                            },
                            "additionalProperties": false,
                            "$comment": "\u914d\u5217\u8981\u7d20\u306fFake/Resource\u3067\u89b3\u5bdf\u3055\u308c\u305f\u65e2\u77e5property\u306b\u56fa\u5b9a\u3059\u308b\u3002\u65b0\u3057\u3044\u5217\u304c\u5fc5\u8981\u306b\u306a\u3063\u305f\u5834\u5408\u306fSemantic-Ex\u89b3\u5bdf\u306b\u8ffd\u52a0\u3057\u3066schema\u3092\u66f4\u65b0\u3059\u308b\u3002"
                        },
                        "minItems": 0
                    },
                    "paymentMethodId": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 2147483647,
                        "title": "\u652f\u6255\u65b9\u6cd5ID",
                        "description": "\u53d7\u6ce8\u306b\u7d10\u3065\u304f\u652f\u6255\u65b9\u6cd5\u30de\u30b9\u30bfID\u3002Fake/EC-CUBE\u5883\u754c\u3067\u306fDB\u63a1\u756a\u5024\u3068\u3057\u3066\u6271\u3046\u3002",
                        "example": 2
                    },
                    "customer": {
                        "type": [
                            "array",
                            "null",
                            "object"
                        ],
                        "title": "\u4f1a\u54e1\u8a73\u7d30",
                        "description": "/shopping/confirm \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u4f1a\u54e1\u8a73\u7d30\u3002\u914d\u5217\u8981\u7d20\u306fALPS\u610f\u5473\u3068Fake\u89b3\u5bdf\u306b\u57fa\u3065\u304d\u3001\u56fa\u5b9a\u3067\u304d\u306a\u3044\u52d5\u7684\u5217\u306f\u4f8b\u5916\u7406\u7531\u3092\u53f0\u5e33\u5316\u3059\u308b\u3002",
                        "items": {
                            "type": "string",
                            "title": "\u4f1a\u54e1",
                            "minLength": 0,
                            "maxLength": 255,
                            "description": "/shopping/confirm \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u4f1a\u54e1\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `customer` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002"
                        },
                        "minItems": 0,
                        "$comment": "\u5358\u4e00\u8a73\u7d30\u753b\u9762\u3067\u306f\u672a\u9078\u629e/\u521d\u671f\u8868\u793a\u306b\u7a7a\u914d\u5217\u3001\u53d6\u5f97\u6e08\u307f\u72b6\u614b\u306bobject\u304c\u73fe\u308c\u308b\u3002\u4e0d\u900f\u660e\u306a\u8a73\u7d30\u69cb\u9020\u306f\u65e2\u77e5property\u3092\u512a\u5148\u3057\u3001\u8ffd\u52a0\u30ad\u30fc\u306f\u4e92\u63db\u5883\u754c\u3068\u3057\u3066\u8a31\u5bb9\u3059\u308b\u3002"
                    },
                    "deliveryFeeTotal": {
                        "title": "\u9001\u6599\u5408\u8a08",
                        "description": "\u5168\u914d\u9001\u5148\u306e\u9001\u6599\u5408\u8a08\uff08\u30b9\u30ca\u30c3\u30d7\u30b7\u30e7\u30c3\u30c8\uff09\u3002deliveryFeeAmount\uff08\u5730\u57df\u5225\u9001\u6599\uff09+ deliveryFee\uff08\u5546\u54c1\u5225\u9001\u6599\uff09\u00d7\u6570\u91cf \u306e\u5408\u8a08\u3002DeliveryFeePreprocessor\u3067\u8a08\u7b97\u3002\u30ab\u30fc\u30c8\u3068\u53d7\u6ce8\u306e\u4e21\u65b9\u3067\u4f7f\u7528 Fake\u89b3\u5bdf\u6570\u5024 0\u301c800; \u89b3\u5bdf\u5024 '600', '0', '500', '800', '700'\u3002",
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 600
                    },
                    "usePoint": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 2147483647,
                        "title": "\u4f7f\u7528\u30dd\u30a4\u30f3\u30c8",
                        "description": "\u6ce8\u6587\u3067\u4f7f\u7528\u3059\u308b\u30dd\u30a4\u30f3\u30c8\u6570\u3002\u5b9f\u969b\u306e\u5024\u5f15\u304d\u984d\u306f usePoint x pointConversionRate\uff08\u5207\u308a\u6368\u3066\uff09\u3067\u8a08\u7b97\u3055\u308c\u3001\u4e0d\u8ab2\u7a0e\u306e\u30dd\u30a4\u30f3\u30c8\u5024\u5f15\u304d\u660e\u7d30\u3068\u3057\u3066\u53d7\u6ce8\u306b\u8ffd\u52a0 Fake\u89b3\u5bdf\u6570\u5024 0\u301c0; \u89b3\u5bdf\u5024 '0'\u3002",
                        "example": 0
                    },
                    "charge": {
                        "title": "\u624b\u6570\u6599",
                        "description": "\u53d7\u6ce8\u306e\u6c7a\u6e08\u624b\u6570\u6599\u3002paymentCharge\uff08\u652f\u6255\u65b9\u6cd5\u30de\u30b9\u30bf\u306e\u624b\u6570\u6599\uff09\u306e\u30b9\u30ca\u30c3\u30d7\u30b7\u30e7\u30c3\u30c8\u3002PaymentChargePreprocessor\u306b\u3088\u308a\u53d7\u6ce8\u4f5c\u6210\u6642\u306b\u30b3\u30d4\u30fc\u3055\u308c\u308b Fake\u89b3\u5bdf\u6570\u5024 0\u301c300; \u89b3\u5bdf\u5024 '0', '300', '200'\u3002",
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 0
                    },
                    "paymentMethodName": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 255,
                        "title": "\u652f\u6255\u65b9\u6cd5\u540d",
                        "description": "\u652f\u6255\u65b9\u6cd5\u306e\u8868\u793a\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 4\u301c8; \u89b3\u5bdf\u5024 '\u4ee3\u91d1\u5f15\u63db', '\u30af\u30ec\u30b8\u30c3\u30c8\u30ab\u30fc\u30c9', '\u691c\u8a3c\u5931\u6557'\u3002",
                        "example": "\u4ee3\u91d1\u5f15\u63db"
                    },
                    "paymentTotal": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "title": "\u652f\u6255\u5408\u8a08",
                        "description": "\u5b9f\u969b\u306e\u652f\u6255\u91d1\u984d\u3002\u521d\u671f\u5024\u306ftotal\u3068\u540c\u5024\u3067\u3001PointProcessor\u304c\u30dd\u30a4\u30f3\u30c8\u5024\u5f15\u304d\u306eOrderItem\uff08type=POINT_DISCOUNT\u3001\u4e0d\u8ab2\u7a0e\uff09\u3092\u8ffd\u52a0\u5f8c\u306bPurchaseFlow.calculateTotal()\u3067\u518d\u8a08\u7b97\u3055\u308c\u308b\u3002\u8a08\u7b97\u5f0f: total - (\u5229\u7528\u30dd\u30a4\u30f3\u30c8 x pointConversionRate) Fake\u89b3\u5bdf\u6570\u5024 12700\u301c12700; \u89b3\u5bdf\u5024 '12700'\u3002",
                        "example": 12700,
                        "minimum": 0,
                        "maximum": 999999999
                    },
                    "preOrderId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u4eee\u6ce8\u6587ID",
                        "description": "\u8cfc\u5165\u30d5\u30ed\u30fc\u306e\u4e00\u6642\u30bb\u30c3\u30b7\u30e7\u30f3\u30c8\u30fc\u30af\u30f3\uff08SHA1\u30cf\u30c3\u30b7\u30e5\uff09\u3002\u30ab\u30fc\u30c8\u3068\u53d7\u6ce8\u3092\u7d10\u3065\u3051\u308b\u3002\u4e88\u7d04\u6ce8\u6587\uff08pre-order\uff09ID\u3067\u306f\u306a\u3044\u3002\u30c1\u30a7\u30c3\u30af\u30a2\u30a6\u30c8\u958b\u59cb\u6642\u306b\u751f\u6210\u3001\u6ce8\u6587\u78ba\u5b9a\u307e\u305f\u306f\u30ab\u30fc\u30c8\u7834\u68c4\u3067\u6d88\u53bb Fake\u89b3\u5bdf\u6587\u5b57\u9577 40\u301c40; \u89b3\u5bdf\u5024 'deadbeefcafe1234567890abcdef01234567890a', 'deadbeefcafe1234567890abcdef01234567890b', 'aaaa00000000000000000000000000000000aaaa', 'past00000000000000000000000000000000past', 'deadbeefcafe1234567890abcdef01234567890c', 'bbbb00000000000000000000000000000000bbbb', 'cccc00000000000000000000000000000000cccc', 'aceface0000000000000000000000000000a11ce'\u3002",
                        "example": "deadbeefcafe1234567890abcdef01234567890a",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    },
                    "tax": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "title": "\u7a0e\u984d",
                        "description": "\u53d7\u6ce8\u5168\u4f53\u306e\u7a0e\u984d\u5408\u8a08\uff08\u975e\u63a8\u5968\uff09\u3002\u660e\u7d30\u3054\u3068\u306e\u7a0e\u984d\u96c6\u8a08\u3068\u5dee\u7570\u304c\u751f\u3058\u308b\u5834\u5408\u304c\u3042\u308b\u305f\u3081\u3001\u6b63\u78ba\u306a\u7a0e\u984d\u306fOrderItem\u660e\u7d30\u3054\u3068\u306etax\u3092\u96c6\u8a08\u3059\u3079\u304d Fake\u89b3\u5bdf\u6570\u5024 1100\u301c1100; \u89b3\u5bdf\u5024 '1100'\u3002",
                        "example": 1100,
                        "minimum": 0,
                        "maximum": 999999999
                    },
                    "submitTo": {
                        "type": [
                            "object",
                            "null"
                        ],
                        "title": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5148\u30ea\u30f3\u30af",
                        "description": "/shopping/confirm \u306e\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u306b\u4f7f\u3046\u9001\u4fe1\u5148\u30ea\u30f3\u30af\u3002HTTP\u30e1\u30bd\u30c3\u30c9\u3068\u9077\u79fb\u5148\u3092\u307e\u3068\u3081\u3001unsafe\u64cd\u4f5c\u306e\u5165\u53e3\u3092\u660e\u793a\u3059\u308b\u3002",
                        "properties": {
                            "href": {
                                "title": "\u30ea\u30f3\u30afURI\u53c2\u7167\uff08URI\u53c2\u7167\uff09",
                                "description": "\u30da\u30fc\u30b8\u306eURL\u30d1\u30b9\uff08Symfony\u30eb\u30fc\u30c8\u540d\u3002\u4f8b: homepage, product_list\uff09",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "method": {
                                "type": [
                                    "string",
                                    "null"
                                ],
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ],
                                "title": "HTTP\u30e1\u30bd\u30c3\u30c9",
                                "description": "/shopping/confirm \u306e\u30ea\u30f3\u30af\u307e\u305f\u306f\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u3067\u4f7f\u3046HTTP\u30e1\u30bd\u30c3\u30c9\u3002GET/POST\u7b49\u306e\u9077\u79fb\u65b9\u6cd5\u3092\u8868\u3059\u3002"
                            }
                        },
                        "additionalProperties": false,
                        "required": [
                            "href",
                            "method"
                        ]
                    },
                    "subtotal": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "title": "\u5546\u54c1\u5c0f\u8a08",
                        "description": "\u5546\u54c1\u5408\u8a08\u91d1\u984d\uff08\u7a0e\u8fbc\uff09\u3002\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u5024\u5f15\u304d\u9069\u7528\u524d\u306e\u5546\u54c1\u660e\u7d30\uff08orderItemType=1\uff09\u306e\u307f\u306e\u5408\u8a08\u3002PurchaseFlow.calculateSubTotal()\u3067\u8a08\u7b97\u3002\u9001\u6599\u7121\u6599\u6761\u4ef6\u306e\u5224\u5b9a\u57fa\u6e96\u306b\u3082\u4f7f\u7528\uff08\u304a\u5c4a\u3051\u5148\u3054\u3068\u306b\u5224\u5b9a\uff09 Fake\u89b3\u5bdf\u6570\u5024 11000\u301c11000; \u89b3\u5bdf\u5024 '11000'\u3002",
                        "example": 11000,
                        "minimum": 0,
                        "maximum": 999999999
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "\u3053\u306e\u30ec\u30b9\u30dd\u30f3\u30b9/\u64cd\u4f5c\u304c\u5bfe\u5fdc\u3059\u308bALPS\u9077\u79fbID\u3002\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u306e\u72b6\u614b\u9077\u79fb\u8ffd\u8de1\u306b\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "discount": {
                        "title": "\u5024\u5f15\u304d\u984d",
                        "description": "\u53d7\u6ce8\u5168\u4f53\u306e\u5024\u5f15\u304d\u5408\u8a08\u984d\u3002\u30af\u30fc\u30dd\u30f3\u7b49\u306b\u3088\u308b\u5024\u5f15\u304d Fake\u89b3\u5bdf\u6570\u5024 0\u301c0; \u89b3\u5bdf\u5024 '0'\u3002",
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 0
                    },
                    "csrfToken": {
                        "title": "\u51e6\u7406\u8b58\u5225\u5b50",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u306e\u507d\u9020\u3092\u9632\u3050\u305f\u3081\u306b\u9001\u4fe1\u5143\u753b\u9762\u3067\u767a\u884c\u3055\u308c\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "total": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "title": "\u53d7\u6ce8\u5408\u8a08",
                        "description": "\u53d7\u6ce8\u5408\u8a08\u91d1\u984d\u3002\u8a08\u7b97\u5f0f: subtotal(\u5546\u54c1\u7a0e\u8fbc\u5408\u8a08) + deliveryFeeTotal(\u9001\u6599) + charge(\u624b\u6570\u6599) - discount(\u5024\u5f15\u304d)\u3002\u30ab\u30fc\u30c8\u306etotalPrice\u3068\u306f\u5225\u30d7\u30ed\u30d1\u30c6\u30a3 Fake\u89b3\u5bdf\u6570\u5024 12700\u301c12700; \u89b3\u5bdf\u5024 '12700'\u3002",
                        "example": 12700,
                        "minimum": 0,
                        "maximum": 999999999
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "addPoint",
                    "items",
                    "paymentMethodId",
                    "customer",
                    "deliveryFeeTotal",
                    "usePoint",
                    "charge",
                    "paymentMethodName",
                    "paymentTotal",
                    "preOrderId",
                    "tax",
                    "subtotal",
                    "transitionId",
                    "discount",
                    "total"
                ]
            },
            "GET/shopping/errorResponse": {
                "title": "GET /shopping/error response",
                "description": "GET /shopping/error response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "fields": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u9759\u7684\u8868\u793a\u30d5\u30a3\u30fc\u30eb\u30c9",
                        "description": "/shopping/error \u3067\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u3078\u6e21\u3059\u8868\u793a\u7528\u30d5\u30a3\u30fc\u30eb\u30c9\u96c6\u5408\u3002\u30d5\u30a9\u30fc\u30e0\u5165\u529b\u5024\u3067\u306f\u306a\u304f\u753b\u9762\u6587\u8108\u30c7\u30fc\u30bf\u3002",
                        "items": {
                            "type": "string",
                            "title": "\u8868\u793a\u30d5\u30a3\u30fc\u30eb\u30c9",
                            "minLength": 0,
                            "maxLength": 255,
                            "description": "/shopping/error \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u6ce8\u6587\u884c\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `fields` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002"
                        }
                    },
                    "submitTo": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 255,
                        "title": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5148\u30ea\u30f3\u30af",
                        "description": "/shopping/error \u306e\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u306b\u4f7f\u3046\u9001\u4fe1\u5148\u30ea\u30f3\u30af\u3002HTTP\u30e1\u30bd\u30c3\u30c9\u3068\u9077\u79fb\u5148\u3092\u307e\u3068\u3081\u3001unsafe\u64cd\u4f5c\u306e\u5165\u53e3\u3092\u660e\u793a\u3059\u308b\u3002"
                    },
                    "staticContent": {
                        "type": [
                            "object",
                            "null"
                        ],
                        "title": "\u9759\u7684\u30b3\u30f3\u30c6\u30f3\u30c4",
                        "description": "/shopping/error \u3067\u8868\u793a\u3059\u308b\u898f\u7d04\u30fb\u30d8\u30eb\u30d7\u30fb\u30a8\u30e9\u30fc\u7b49\u306e\u9759\u7684\u30da\u30fc\u30b8\u672c\u6587\u3068\u30bb\u30af\u30b7\u30e7\u30f3\u60c5\u5831\u3002",
                        "properties": {
                            "page": {
                                "type": [
                                    "string",
                                    "null"
                                ],
                                "minLength": 0,
                                "maxLength": 255,
                                "title": "\u30da\u30fc\u30b8\u8b58\u5225\u5b50",
                                "description": "/shopping/error \u306e\u9759\u7684\u30b3\u30f3\u30c6\u30f3\u30c4\u3067\u8868\u793a\u5bfe\u8c61\u30da\u30fc\u30b8\u3092\u8b58\u5225\u3059\u308b\u5024\u3002\u30da\u30fc\u30b8\u756a\u53f7\u3067\u306f\u306a\u3044\u3002"
                            },
                            "sections": {
                                "type": [
                                    "array",
                                    "null"
                                ],
                                "title": "\u9759\u7684\u30b3\u30f3\u30c6\u30f3\u30c4\u30bb\u30af\u30b7\u30e7\u30f3\u4e00\u89a7",
                                "description": "/shopping/error \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u9759\u7684\u30b3\u30f3\u30c6\u30f3\u30c4\u30bb\u30af\u30b7\u30e7\u30f3\u4e00\u89a7\u3002\u914d\u5217\u8981\u7d20\u306fALPS\u610f\u5473\u3068Fake\u89b3\u5bdf\u306b\u57fa\u3065\u304d\u3001\u56fa\u5b9a\u3067\u304d\u306a\u3044\u52d5\u7684\u5217\u306f\u4f8b\u5916\u7406\u7531\u3092\u53f0\u5e33\u5316\u3059\u308b\u3002",
                                "items": {
                                    "type": "object",
                                    "title": "\u9759\u7684\u30b3\u30f3\u30c6\u30f3\u30c4\u30bb\u30af\u30b7\u30e7\u30f3",
                                    "description": "/shopping/error \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u9759\u7684\u30b3\u30f3\u30c6\u30f3\u30c4\u30bb\u30af\u30b7\u30e7\u30f3\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `sections` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002",
                                    "properties": {
                                        "title": {
                                            "type": [
                                                "string",
                                                "null"
                                            ],
                                            "minLength": 0,
                                            "maxLength": 255,
                                            "title": "\u51e6\u7406\u30bf\u30a4\u30c8\u30eb",
                                            "description": "/shopping/error \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8868\u793a\u307e\u305f\u306f\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u63cf\u753b\u306b\u4f7f\u3046\u51e6\u7406\u30bf\u30a4\u30c8\u30eb\u3002\u540c\u540dproperty\u3067\u3082\u89aa\u6587\u8108 `root` \u306b\u3088\u3063\u3066\u610f\u5473\u3092\u5206\u3051\u308b\u3002"
                                        },
                                        "body": {
                                            "type": [
                                                "string",
                                                "null"
                                            ],
                                            "minLength": 0,
                                            "maxLength": 128,
                                            "title": "\u672c\u6587",
                                            "description": "Fake\u89b3\u5bdf\u6587\u5b57\u9577 53\u301c53; \u89b3\u5bdf\u5024 '\u8ca9\u58f2\u696d\u8005: \u682a\u5f0f\u4f1a\u793eEC-CUBE\\n\u6240\u5728\u5730: \u5927\u962a\u5e02\u5317\u533a\u6885\u75301-1-1\\n\u9023\u7d61\u5148: 06-1234-5678'\u3002",
                                            "example": "\u8ca9\u58f2\u696d\u8005: \u682a\u5f0f\u4f1a\u793eEC-CUBE\n\u6240\u5728\u5730: \u5927\u962a\u5e02\u5317\u533a\u6885\u75301-1-1\n\u9023\u7d61\u5148: 06-1234-5678"
                                        },
                                        "content": {
                                            "type": [
                                                "string",
                                                "null"
                                            ],
                                            "minLength": 0,
                                            "maxLength": 255,
                                            "title": "\u672c\u6587",
                                            "description": "/shopping/error \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8868\u793a\u307e\u305f\u306f\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u63cf\u753b\u306b\u4f7f\u3046\u672c\u6587\u3002\u540c\u540dproperty\u3067\u3082\u89aa\u6587\u8108 `root` \u306b\u3088\u3063\u3066\u610f\u5473\u3092\u5206\u3051\u308b\u3002"
                                        }
                                    },
                                    "additionalProperties": false,
                                    "$comment": "\u914d\u5217\u8981\u7d20\u306fFake/Resource\u3067\u89b3\u5bdf\u3055\u308c\u305f\u65e2\u77e5property\u306b\u56fa\u5b9a\u3059\u308b\u3002\u65b0\u3057\u3044\u5217\u304c\u5fc5\u8981\u306b\u306a\u3063\u305f\u5834\u5408\u306fSemantic-Ex\u89b3\u5bdf\u306b\u8ffd\u52a0\u3057\u3066schema\u3092\u66f4\u65b0\u3059\u308b\u3002"
                                },
                                "minItems": 0
                            },
                            "title": {
                                "type": [
                                    "string",
                                    "null"
                                ],
                                "minLength": 0,
                                "maxLength": 255,
                                "title": "\u51e6\u7406\u30bf\u30a4\u30c8\u30eb",
                                "description": "/shopping/error \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8868\u793a\u307e\u305f\u306f\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u63cf\u753b\u306b\u4f7f\u3046\u51e6\u7406\u30bf\u30a4\u30c8\u30eb\u3002\u540c\u540dproperty\u3067\u3082\u89aa\u6587\u8108 `root` \u306b\u3088\u3063\u3066\u610f\u5473\u3092\u5206\u3051\u308b\u3002"
                            }
                        },
                        "additionalProperties": false,
                        "required": [
                            "page",
                            "sections",
                            "title"
                        ]
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "\u3053\u306e\u30ec\u30b9\u30dd\u30f3\u30b9/\u64cd\u4f5c\u304c\u5bfe\u5fdc\u3059\u308bALPS\u9077\u79fbID\u3002\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u306e\u72b6\u614b\u9077\u79fb\u8ffd\u8de1\u306b\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "transitionId"
                ]
            },
            "GET/shopping/loginResponse": {
                "title": "GET /shopping/login response",
                "description": "GET /shopping/login response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "form": {
                        "type": [
                            "object",
                            "array",
                            "null"
                        ],
                        "title": "\u5165\u529b\u30d5\u30a9\u30fc\u30e0",
                        "description": "Aura/WebForm\u7531\u6765\u306e\u30d5\u30a9\u30fc\u30e0\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3002\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5185\u90e8\u69cb\u9020\u306e\u305f\u3081schema\u3067\u306f\u5b58\u5728\u3068\u578b\u306e\u307f\u3092\u5951\u7d04\u3059\u308b\u3002",
                        "$comment": "Aura/WebForm\u7531\u6765\u306e\u4e0d\u900f\u660e\u30d5\u30a9\u30fc\u30e0\u8868\u73fe\u3002Resource\u5883\u754c\u3067\u306f\u30d5\u30a9\u30fc\u30e0\u306e\u5b58\u5728\u3068\u30b3\u30f3\u30c6\u30ad\u30b9\u30c8\u3060\u3051\u3092\u5951\u7d04\u3057\u3001\u5185\u90e8\u69cb\u9020\u306f\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5883\u754c\u306b\u59d4\u306d\u308b\u305f\u3081\u8ffd\u52a0\u30ad\u30fc\u5236\u7d04\u3092\u7f6e\u304b\u306a\u3044\u3002"
                    },
                    "fields": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u9759\u7684\u8868\u793a\u30d5\u30a3\u30fc\u30eb\u30c9",
                        "description": "/shopping/login \u3067\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u3078\u6e21\u3059\u8868\u793a\u7528\u30d5\u30a3\u30fc\u30eb\u30c9\u96c6\u5408\u3002\u30d5\u30a9\u30fc\u30e0\u5165\u529b\u5024\u3067\u306f\u306a\u304f\u753b\u9762\u6587\u8108\u30c7\u30fc\u30bf\u3002",
                        "items": {
                            "type": "string",
                            "title": "\u8868\u793a\u30d5\u30a3\u30fc\u30eb\u30c9",
                            "minLength": 0,
                            "maxLength": 255,
                            "description": "/shopping/login \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u6ce8\u6587\u884c\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `fields` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002"
                        }
                    },
                    "submitTo": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 255,
                        "title": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5148\u30ea\u30f3\u30af",
                        "description": "/shopping/login \u306e\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u306b\u4f7f\u3046\u9001\u4fe1\u5148\u30ea\u30f3\u30af\u3002HTTP\u30e1\u30bd\u30c3\u30c9\u3068\u9077\u79fb\u5148\u3092\u307e\u3068\u3081\u3001unsafe\u64cd\u4f5c\u306e\u5165\u53e3\u3092\u660e\u793a\u3059\u308b\u3002"
                    },
                    "staticContent": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 255,
                        "title": "\u9759\u7684\u30b3\u30f3\u30c6\u30f3\u30c4",
                        "description": "/shopping/login \u3067\u8868\u793a\u3059\u308b\u898f\u7d04\u30fb\u30d8\u30eb\u30d7\u30fb\u30a8\u30e9\u30fc\u7b49\u306e\u9759\u7684\u30da\u30fc\u30b8\u672c\u6587\u3068\u30bb\u30af\u30b7\u30e7\u30f3\u60c5\u5831\u3002"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "\u3053\u306e\u30ec\u30b9\u30dd\u30f3\u30b9/\u64cd\u4f5c\u304c\u5bfe\u5fdc\u3059\u308bALPS\u9077\u79fbID\u3002\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u306e\u72b6\u614b\u9077\u79fb\u8ffd\u8de1\u306b\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "transitionId",
                    "csrfToken"
                ]
            },
            "GET/shopping/non-memberResponse": {
                "title": "GET /shopping/non-member response",
                "description": "GET /shopping/non-member response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "form": {
                        "type": [
                            "object",
                            "array",
                            "null"
                        ],
                        "title": "\u5165\u529b\u30d5\u30a9\u30fc\u30e0",
                        "description": "Aura/WebForm\u7531\u6765\u306e\u30d5\u30a9\u30fc\u30e0\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3002\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5185\u90e8\u69cb\u9020\u306e\u305f\u3081schema\u3067\u306f\u5b58\u5728\u3068\u578b\u306e\u307f\u3092\u5951\u7d04\u3059\u308b\u3002",
                        "$comment": "Aura/WebForm\u7531\u6765\u306e\u4e0d\u900f\u660e\u30d5\u30a9\u30fc\u30e0\u8868\u73fe\u3002Resource\u5883\u754c\u3067\u306f\u30d5\u30a9\u30fc\u30e0\u306e\u5b58\u5728\u3068\u30b3\u30f3\u30c6\u30ad\u30b9\u30c8\u3060\u3051\u3092\u5951\u7d04\u3057\u3001\u5185\u90e8\u69cb\u9020\u306f\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5883\u754c\u306b\u59d4\u306d\u308b\u305f\u3081\u8ffd\u52a0\u30ad\u30fc\u5236\u7d04\u3092\u7f6e\u304b\u306a\u3044\u3002"
                    },
                    "fields": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u9759\u7684\u8868\u793a\u30d5\u30a3\u30fc\u30eb\u30c9",
                        "description": "/shopping/non-member \u3067\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u3078\u6e21\u3059\u8868\u793a\u7528\u30d5\u30a3\u30fc\u30eb\u30c9\u96c6\u5408\u3002\u30d5\u30a9\u30fc\u30e0\u5165\u529b\u5024\u3067\u306f\u306a\u304f\u753b\u9762\u6587\u8108\u30c7\u30fc\u30bf\u3002",
                        "items": {
                            "type": "string",
                            "title": "\u8868\u793a\u30d5\u30a3\u30fc\u30eb\u30c9",
                            "minLength": 0,
                            "maxLength": 255,
                            "description": "/shopping/non-member \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u6ce8\u6587\u884c\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `fields` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002"
                        }
                    },
                    "submitTo": {
                        "type": [
                            "object",
                            "null"
                        ],
                        "title": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5148\u30ea\u30f3\u30af",
                        "description": "/shopping/non-member \u306e\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u306b\u4f7f\u3046\u9001\u4fe1\u5148\u30ea\u30f3\u30af\u3002HTTP\u30e1\u30bd\u30c3\u30c9\u3068\u9077\u79fb\u5148\u3092\u307e\u3068\u3081\u3001unsafe\u64cd\u4f5c\u306e\u5165\u53e3\u3092\u660e\u793a\u3059\u308b\u3002",
                        "properties": {
                            "href": {
                                "title": "\u30ea\u30f3\u30afURI\u53c2\u7167\uff08URI\u53c2\u7167\uff09",
                                "description": "\u30da\u30fc\u30b8\u306eURL\u30d1\u30b9\uff08Symfony\u30eb\u30fc\u30c8\u540d\u3002\u4f8b: homepage, product_list\uff09",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "method": {
                                "type": [
                                    "string",
                                    "null"
                                ],
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ],
                                "title": "HTTP\u30e1\u30bd\u30c3\u30c9",
                                "description": "/shopping/non-member \u306e\u30ea\u30f3\u30af\u307e\u305f\u306f\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u3067\u4f7f\u3046HTTP\u30e1\u30bd\u30c3\u30c9\u3002GET/POST\u7b49\u306e\u9077\u79fb\u65b9\u6cd5\u3092\u8868\u3059\u3002"
                            }
                        },
                        "additionalProperties": false,
                        "required": [
                            "href",
                            "method"
                        ]
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "\u3053\u306e\u30ec\u30b9\u30dd\u30f3\u30b9/\u64cd\u4f5c\u304c\u5bfe\u5fdc\u3059\u308bALPS\u9077\u79fbID\u3002\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u306e\u72b6\u614b\u9077\u79fb\u8ffd\u8de1\u306b\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "csrfToken": {
                        "title": "\u51e6\u7406\u8b58\u5225\u5b50",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u306e\u507d\u9020\u3092\u9632\u3050\u305f\u3081\u306b\u9001\u4fe1\u5143\u753b\u9762\u3067\u767a\u884c\u3055\u308c\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "transitionId"
                ]
            },
            "POST/shopping/non-memberResponse": {
                "title": "POST /shopping/non-member response",
                "description": "POST /shopping/non-member response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "name01": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 80,
                        "title": "\u59d3",
                        "description": "\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u30fb\u304a\u554f\u3044\u5408\u308f\u305b\u3067\u5171\u901a\u4f7f\u7528\u3055\u308c\u308b\u59d3 Fake\u89b3\u5bdf\u6587\u5b57\u9577 2\u301c2; \u89b3\u5bdf\u5024 '\u9234\u6728', '\u5c71\u7530', '\u4f50\u85e4', '\u9ad8\u6a4b', '\u9000\u4f1a'\u3002",
                        "example": "\u9234\u6728"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u3002\u4f1a\u54e1\u767b\u9332\u30fb\u30ed\u30b0\u30a4\u30f3\u30fb\u901a\u77e5\u3067\u5171\u901a\u306b\u4f7f\u3046\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 15\u301c58; \u89b3\u5bdf\u5024 'bob@example.com', 'login-test@example.com', 'alice@example.com', 'carol@example.com', 'provisional@example.com', 'withdrawn-30000000aaaa3333bbbb4444cccc5555@example.invalid'\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "paymentMethodId": {
                        "$ref": "#/$defs/dbId",
                        "title": "\u652f\u6255\u65b9\u6cd5ID",
                        "description": "\u975e\u4f1a\u54e1\u8cfc\u5165\u3067\u4f5c\u6210\u3057\u305f\u4eee\u6ce8\u6587\u306b\u7d10\u3065\u304f\u652f\u6255\u65b9\u6cd5ID\u3002\u6b21\u306e\u6ce8\u6587\u78ba\u8a8d\u9077\u79fb doConfirmOrder \u3078\u6e21\u3059\u3002"
                    },
                    "preOrderId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u4eee\u6ce8\u6587ID",
                        "description": "\u8cfc\u5165\u30d5\u30ed\u30fc\u306e\u4e00\u6642\u30bb\u30c3\u30b7\u30e7\u30f3\u30c8\u30fc\u30af\u30f3\uff08SHA1\u30cf\u30c3\u30b7\u30e5\uff09\u3002\u30ab\u30fc\u30c8\u3068\u53d7\u6ce8\u3092\u7d10\u3065\u3051\u308b\u3002\u4e88\u7d04\u6ce8\u6587\uff08pre-order\uff09ID\u3067\u306f\u306a\u3044\u3002\u30c1\u30a7\u30c3\u30af\u30a2\u30a6\u30c8\u958b\u59cb\u6642\u306b\u751f\u6210\u3001\u6ce8\u6587\u78ba\u5b9a\u307e\u305f\u306f\u30ab\u30fc\u30c8\u7834\u68c4\u3067\u6d88\u53bb Fake\u89b3\u5bdf\u6587\u5b57\u9577 40\u301c40; \u89b3\u5bdf\u5024 'deadbeefcafe1234567890abcdef01234567890a', 'deadbeefcafe1234567890abcdef01234567890b', 'aaaa00000000000000000000000000000000aaaa', 'past00000000000000000000000000000000past', 'deadbeefcafe1234567890abcdef01234567890c', 'bbbb00000000000000000000000000000000bbbb', 'cccc00000000000000000000000000000000cccc', 'aceface0000000000000000000000000000a11ce'\u3002",
                        "example": "deadbeefcafe1234567890abcdef01234567890a",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    },
                    "name02": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 80,
                        "title": "\u540d",
                        "description": "\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u30fb\u304a\u554f\u3044\u5408\u308f\u305b\u3067\u5171\u901a\u4f7f\u7528\u3055\u308c\u308b\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 1\u301c3; \u89b3\u5bdf\u5024 '\u30a2\u30ea\u30b9', '\u592a\u90ce', '\u6b21\u90ce', '\u82b1\u5b50', '\u4e09\u90ce', '\u6e08'\u3002",
                        "example": "\u30a2\u30ea\u30b9"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "name01",
                    "email",
                    "preOrderId",
                    "name02"
                ]
            },
            "GET/shopping/shippingResponse": {
                "title": "GET /shopping/shipping response",
                "description": "GET /shopping/shipping response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "fields": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u9759\u7684\u8868\u793a\u30d5\u30a3\u30fc\u30eb\u30c9",
                        "description": "/shopping/shipping \u3067\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u3078\u6e21\u3059\u8868\u793a\u7528\u30d5\u30a3\u30fc\u30eb\u30c9\u96c6\u5408\u3002\u30d5\u30a9\u30fc\u30e0\u5165\u529b\u5024\u3067\u306f\u306a\u304f\u753b\u9762\u6587\u8108\u30c7\u30fc\u30bf\u3002",
                        "items": {
                            "type": "string",
                            "title": "\u8868\u793a\u30d5\u30a3\u30fc\u30eb\u30c9",
                            "minLength": 0,
                            "maxLength": 255,
                            "description": "/shopping/shipping \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u6ce8\u6587\u884c\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `fields` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002"
                        }
                    },
                    "submitTo": {
                        "type": [
                            "object",
                            "null"
                        ],
                        "title": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5148\u30ea\u30f3\u30af",
                        "description": "/shopping/shipping \u306e\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u306b\u4f7f\u3046\u9001\u4fe1\u5148\u30ea\u30f3\u30af\u3002HTTP\u30e1\u30bd\u30c3\u30c9\u3068\u9077\u79fb\u5148\u3092\u307e\u3068\u3081\u3001unsafe\u64cd\u4f5c\u306e\u5165\u53e3\u3092\u660e\u793a\u3059\u308b\u3002",
                        "properties": {
                            "href": {
                                "title": "\u30ea\u30f3\u30afURI\u53c2\u7167\uff08URI\u53c2\u7167\uff09",
                                "description": "\u30da\u30fc\u30b8\u306eURL\u30d1\u30b9\uff08Symfony\u30eb\u30fc\u30c8\u540d\u3002\u4f8b: homepage, product_list\uff09",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "method": {
                                "type": [
                                    "string",
                                    "null"
                                ],
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ],
                                "title": "HTTP\u30e1\u30bd\u30c3\u30c9",
                                "description": "/shopping/shipping \u306e\u30ea\u30f3\u30af\u307e\u305f\u306f\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u3067\u4f7f\u3046HTTP\u30e1\u30bd\u30c3\u30c9\u3002GET/POST\u7b49\u306e\u9077\u79fb\u65b9\u6cd5\u3092\u8868\u3059\u3002"
                            }
                        },
                        "additionalProperties": false,
                        "required": [
                            "href",
                            "method"
                        ]
                    },
                    "staticContent": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 255,
                        "title": "\u9759\u7684\u30b3\u30f3\u30c6\u30f3\u30c4",
                        "description": "/shopping/shipping \u3067\u8868\u793a\u3059\u308b\u898f\u7d04\u30fb\u30d8\u30eb\u30d7\u30fb\u30a8\u30e9\u30fc\u7b49\u306e\u9759\u7684\u30da\u30fc\u30b8\u672c\u6587\u3068\u30bb\u30af\u30b7\u30e7\u30f3\u60c5\u5831\u3002"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "\u3053\u306e\u30ec\u30b9\u30dd\u30f3\u30b9/\u64cd\u4f5c\u304c\u5bfe\u5fdc\u3059\u308bALPS\u9077\u79fbID\u3002\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u306e\u72b6\u614b\u9077\u79fb\u8ffd\u8de1\u306b\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "addresses": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u4f4f\u6240\u4e00\u89a7",
                        "description": "/shopping/shipping \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u4f4f\u6240\u4e00\u89a7\u3002\u914d\u5217\u8981\u7d20\u306fALPS\u610f\u5473\u3068Fake\u89b3\u5bdf\u306b\u57fa\u3065\u304d\u3001\u56fa\u5b9a\u3067\u304d\u306a\u3044\u52d5\u7684\u5217\u306f\u4f8b\u5916\u7406\u7531\u3092\u53f0\u5e33\u5316\u3059\u308b\u3002",
                        "items": {
                            "type": "object",
                            "title": "\u4f4f\u6240",
                            "description": "/shopping/shipping \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u4f4f\u6240\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `addresses` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002",
                            "properties": {
                                "addressId": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "title": "\u914d\u9001\u5148\u4f4f\u6240ID",
                                    "description": "dtb_customer_address.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e AddressEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f 32\u6841hex \u3092\u751f\u6210\u3057\u3001SQL \u5b9f\u88c5\u306f dtb_customer_address.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u6240\u6709\u8005\u306f customerId\u3001AUTHZ \u691c\u67fb\u306f CustomerAddressUpdated / CustomerAddressDeleted \u3067 getById \u2192 customerId \u4e00\u81f4\u78ba\u8a8d\u306e\u9806\u3067\u5b9f\u65bd Fake\u89b3\u5bdf\u6587\u5b57\u9577 32\u301c32; \u89b3\u5bdf\u5024 'addr00000000000000000000000000a1'\u3002",
                                    "example": "addr00000000000000000000000000a1",
                                    "minLength": 0,
                                    "maxLength": 128,
                                    "pattern": "^[A-Za-z0-9._:@/-]*$",
                                    "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                                },
                                "shippingAddressId": {
                                    "type": [
                                        "integer",
                                        "null"
                                    ],
                                    "minimum": 0,
                                    "maximum": 2147483647,
                                    "title": "\u914d\u9001\u5148ID",
                                    "description": "/shopping/shipping \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u5bfe\u8c61\u3092\u8b58\u5225\u3059\u308b\u914d\u9001\u5148ID\u3002DB\u63a1\u756aID\u3001Fake\u6587\u5b57\u5217ID\u3001\u4e92\u63db\u5883\u754cID\u306e\u3069\u308c\u306b\u8a72\u5f53\u3059\u308b\u304b\u3092schema\u306e\u578b\u3068\u30b3\u30e1\u30f3\u30c8\u3067\u5206\u3051\u308b\u3002",
                                    "$comment": "EC-CUBE\u5074\u306e\u63a1\u756aID\u3068\u3057\u3066\u6271\u3046\u3002"
                                },
                                "name01": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 80,
                                    "title": "\u59d3",
                                    "description": "\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u30fb\u304a\u554f\u3044\u5408\u308f\u305b\u3067\u5171\u901a\u4f7f\u7528\u3055\u308c\u308b\u59d3 Fake\u89b3\u5bdf\u6587\u5b57\u9577 2\u301c2; \u89b3\u5bdf\u5024 '\u9234\u6728', '\u5c71\u7530', '\u4f50\u85e4', '\u9ad8\u6a4b', '\u9000\u4f1a'\u3002",
                                    "example": "\u9234\u6728"
                                },
                                "name02": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 80,
                                    "title": "\u540d",
                                    "description": "\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u30fb\u304a\u554f\u3044\u5408\u308f\u305b\u3067\u5171\u901a\u4f7f\u7528\u3055\u308c\u308b\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 1\u301c3; \u89b3\u5bdf\u5024 '\u30a2\u30ea\u30b9', '\u592a\u90ce', '\u6b21\u90ce', '\u82b1\u5b50', '\u4e09\u90ce', '\u6e08'\u3002",
                                    "example": "\u30a2\u30ea\u30b9"
                                },
                                "postalCode": {
                                    "title": "\u90f5\u4fbf\u756a\u53f7",
                                    "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u6709\u7121\u3092\u3069\u3061\u3089\u3082\u53d7\u3051\u5165\u308c\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 7\u301c8; \u89b3\u5bdf\u5024 '1500001', '1000005', '5300001', '530-0001'; null 18/33\u3002",
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "pattern": "^\\d{3}-?\\d{4}$",
                                    "example": "1500001"
                                },
                                "pref": {
                                    "title": "\u90fd\u9053\u5e9c\u770c",
                                    "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u90fd\u9053\u5e9c\u770cID\u3002\u4f4f\u6240\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u72b6\u614b\u3067\u306f0\u3001\u78ba\u5b9a\u4f4f\u6240\u3067\u306f1\u301c47\u3092\u4f7f\u3046\u3002 Fake\u89b3\u5bdf\u6570\u5024 13\u301c27; \u89b3\u5bdf\u5024 '13', '27'; null 3/9\u3002",
                                    "type": [
                                        "integer",
                                        "null"
                                    ],
                                    "minimum": 0,
                                    "maximum": 47,
                                    "example": 13
                                },
                                "addr01": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 32,
                                    "title": "\u5e02\u533a\u753a\u6751",
                                    "description": "\u90fd\u9053\u5e9c\u770c\u3088\u308a\u4e0b\u4f4d\u306e\u5e02\u533a\u753a\u6751\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 3\u301c7; \u89b3\u5bdf\u5024 '\u6e0b\u8c37\u533a', '\u5343\u4ee3\u7530\u533a', '\u5927\u962a\u5e02\u5317\u533a', '\u5927\u962a\u5e02\u5317\u533a\u6885\u7530'; null 18/33\u3002",
                                    "example": "\u6e0b\u8c37\u533a"
                                },
                                "addr02": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 32,
                                    "title": "\u756a\u5730\u30fb\u5efa\u7269\u540d",
                                    "description": "\u756a\u5730\u30fb\u30d3\u30eb\u540d\u30fb\u90e8\u5c4b\u756a\u53f7\u7b49\u306e\u8a73\u7d30\u4f4f\u6240 Fake\u89b3\u5bdf\u6587\u5b57\u9577 5\u301c8; \u89b3\u5bdf\u5024 '\u795e\u5bae\u524d1-1-1', '\u4e38\u306e\u51852-2-2', '\u6885\u75301-1-1', '1-2-3'; null 18/33\u3002",
                                    "example": "\u795e\u5bae\u524d1-1-1"
                                },
                                "phoneNumber": {
                                    "title": "\u96fb\u8a71\u756a\u53f7",
                                    "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u3002Fake corpus\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3060\u304c\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3059\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c10; \u89b3\u5bdf\u5024 '0312345678', '0901234567', '0612345678'; null 18/33\u3002",
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                                    "minLength": 10,
                                    "maxLength": 13,
                                    "example": "0312345678"
                                }
                            },
                            "additionalProperties": false,
                            "$comment": "\u914d\u5217\u8981\u7d20\u306fFake/Resource\u3067\u89b3\u5bdf\u3055\u308c\u305f\u65e2\u77e5property\u306b\u56fa\u5b9a\u3059\u308b\u3002\u65b0\u3057\u3044\u5217\u304c\u5fc5\u8981\u306b\u306a\u3063\u305f\u5834\u5408\u306fSemantic-Ex\u89b3\u5bdf\u306b\u8ffd\u52a0\u3057\u3066schema\u3092\u66f4\u65b0\u3059\u308b\u3002"
                        },
                        "minItems": 0
                    },
                    "csrfToken": {
                        "title": "\u51e6\u7406\u8b58\u5225\u5b50",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u306e\u507d\u9020\u3092\u9632\u3050\u305f\u3081\u306b\u9001\u4fe1\u5143\u753b\u9762\u3067\u767a\u884c\u3055\u308c\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "transitionId",
                    "addresses",
                    "csrfToken"
                ]
            },
            "POST/shopping/shippingResponse": {
                "title": "POST /shopping/shipping response",
                "description": "POST /shopping/shipping response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "message": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u6ce8\u6587\u30e1\u30c3\u30bb\u30fc\u30b8",
                        "description": "/shopping/shipping \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u51e6\u7406\u7d50\u679c\u30e1\u30c3\u30bb\u30fc\u30b8\u3002\u6ce8\u6587\u6642\u304a\u554f\u3044\u5408\u308f\u305b\u6b04\u3067\u306f\u306a\u304f\u3001\u753b\u9762\u9077\u79fb\u3084\u5b8c\u4e86\u8868\u793a\u306e\u305f\u3081\u306e\u901a\u77e5\u6587\u3002",
                        "example": "\u914d\u9001\u306f\u5e73\u65e5\u5e0c\u671b\u3067\u3059\u3002"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "\u3053\u306e\u30ec\u30b9\u30dd\u30f3\u30b9/\u64cd\u4f5c\u304c\u5bfe\u5fdc\u3059\u308bALPS\u9077\u79fbID\u3002\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u306e\u72b6\u614b\u9077\u79fb\u8ffd\u8de1\u306b\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "shippingAddressId": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 2147483647,
                        "title": "\u914d\u9001\u5148ID",
                        "description": "/shopping/shipping \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u5bfe\u8c61\u3092\u8b58\u5225\u3059\u308b\u914d\u9001\u5148ID\u3002DB\u63a1\u756aID\u3001Fake\u6587\u5b57\u5217ID\u3001\u4e92\u63db\u5883\u754cID\u306e\u3069\u308c\u306b\u8a72\u5f53\u3059\u308b\u304b\u3092schema\u306e\u578b\u3068\u30b3\u30e1\u30f3\u30c8\u3067\u5206\u3051\u308b\u3002",
                        "$comment": "EC-CUBE\u5074\u306e\u63a1\u756aID\u3068\u3057\u3066\u6271\u3046\u3002"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "transitionId",
                    "shippingAddressId"
                ]
            },
            "GET/shopping/shipping-editResponse": {
                "title": "GET /shopping/shipping-edit response",
                "description": "GET /shopping/shipping-edit response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "form": {
                        "type": [
                            "object",
                            "array",
                            "null"
                        ],
                        "title": "\u5165\u529b\u30d5\u30a9\u30fc\u30e0",
                        "description": "Aura/WebForm\u7531\u6765\u306e\u30d5\u30a9\u30fc\u30e0\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3002\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5185\u90e8\u69cb\u9020\u306e\u305f\u3081schema\u3067\u306f\u5b58\u5728\u3068\u578b\u306e\u307f\u3092\u5951\u7d04\u3059\u308b\u3002",
                        "$comment": "Aura/WebForm\u7531\u6765\u306e\u4e0d\u900f\u660e\u30d5\u30a9\u30fc\u30e0\u8868\u73fe\u3002Resource\u5883\u754c\u3067\u306f\u30d5\u30a9\u30fc\u30e0\u306e\u5b58\u5728\u3068\u30b3\u30f3\u30c6\u30ad\u30b9\u30c8\u3060\u3051\u3092\u5951\u7d04\u3057\u3001\u5185\u90e8\u69cb\u9020\u306f\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5883\u754c\u306b\u59d4\u306d\u308b\u305f\u3081\u8ffd\u52a0\u30ad\u30fc\u5236\u7d04\u3092\u7f6e\u304b\u306a\u3044\u3002"
                    },
                    "fields": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u9759\u7684\u8868\u793a\u30d5\u30a3\u30fc\u30eb\u30c9",
                        "description": "/shopping/shipping-edit \u3067\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u3078\u6e21\u3059\u8868\u793a\u7528\u30d5\u30a3\u30fc\u30eb\u30c9\u96c6\u5408\u3002\u30d5\u30a9\u30fc\u30e0\u5165\u529b\u5024\u3067\u306f\u306a\u304f\u753b\u9762\u6587\u8108\u30c7\u30fc\u30bf\u3002",
                        "items": {
                            "type": "string",
                            "title": "\u8868\u793a\u30d5\u30a3\u30fc\u30eb\u30c9",
                            "minLength": 0,
                            "maxLength": 255,
                            "description": "/shopping/shipping-edit \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u6ce8\u6587\u884c\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `fields` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002"
                        }
                    },
                    "submitTo": {
                        "type": [
                            "object",
                            "null"
                        ],
                        "title": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5148\u30ea\u30f3\u30af",
                        "description": "/shopping/shipping-edit \u306e\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u306b\u4f7f\u3046\u9001\u4fe1\u5148\u30ea\u30f3\u30af\u3002HTTP\u30e1\u30bd\u30c3\u30c9\u3068\u9077\u79fb\u5148\u3092\u307e\u3068\u3081\u3001unsafe\u64cd\u4f5c\u306e\u5165\u53e3\u3092\u660e\u793a\u3059\u308b\u3002",
                        "properties": {
                            "href": {
                                "title": "\u30ea\u30f3\u30afURI\u53c2\u7167\uff08URI\u53c2\u7167\uff09",
                                "description": "\u30da\u30fc\u30b8\u306eURL\u30d1\u30b9\uff08Symfony\u30eb\u30fc\u30c8\u540d\u3002\u4f8b: homepage, product_list\uff09",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "method": {
                                "type": [
                                    "string",
                                    "null"
                                ],
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ],
                                "title": "HTTP\u30e1\u30bd\u30c3\u30c9",
                                "description": "/shopping/shipping-edit \u306e\u30ea\u30f3\u30af\u307e\u305f\u306f\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u3067\u4f7f\u3046HTTP\u30e1\u30bd\u30c3\u30c9\u3002GET/POST\u7b49\u306e\u9077\u79fb\u65b9\u6cd5\u3092\u8868\u3059\u3002"
                            }
                        },
                        "additionalProperties": false,
                        "required": [
                            "href",
                            "method"
                        ]
                    },
                    "staticContent": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 255,
                        "title": "\u9759\u7684\u30b3\u30f3\u30c6\u30f3\u30c4",
                        "description": "/shopping/shipping-edit \u3067\u8868\u793a\u3059\u308b\u898f\u7d04\u30fb\u30d8\u30eb\u30d7\u30fb\u30a8\u30e9\u30fc\u7b49\u306e\u9759\u7684\u30da\u30fc\u30b8\u672c\u6587\u3068\u30bb\u30af\u30b7\u30e7\u30f3\u60c5\u5831\u3002"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "\u3053\u306e\u30ec\u30b9\u30dd\u30f3\u30b9/\u64cd\u4f5c\u304c\u5bfe\u5fdc\u3059\u308bALPS\u9077\u79fbID\u3002\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u306e\u72b6\u614b\u9077\u79fb\u8ffd\u8de1\u306b\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "csrfToken": {
                        "title": "\u51e6\u7406\u8b58\u5225\u5b50",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u306e\u507d\u9020\u3092\u9632\u3050\u305f\u3081\u306b\u9001\u4fe1\u5143\u753b\u9762\u3067\u767a\u884c\u3055\u308c\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "transitionId",
                    "csrfToken"
                ]
            },
            "POST/shopping/shipping-editResponse": {
                "title": "POST /shopping/shipping-edit response",
                "description": "POST /shopping/shipping-edit response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "kana02": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "pattern": "^[\u30a1-\u30f6\u30fc\u3000 ]*$",
                        "title": "\u30e1\u30a4",
                        "description": "\u540d\u306e\u30ab\u30bf\u30ab\u30ca\u8aad\u307f\u3002\u5168\u89d2\u30ab\u30bf\u30ab\u30ca\u306e\u307f\u8a31\u53ef\uff08\u3072\u3089\u304c\u306a\u5165\u529b\u6642\u306f\u81ea\u52d5\u5909\u63db\uff09\u3002\u65e5\u672c\u306e\u6c0f\u540d\u5165\u529b\u306b\u7279\u6709\u306e\u8aad\u307f\u4eee\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 3\u301c3; \u89b3\u5bdf\u5024 '\u30a2\u30ea\u30b9', '\u30cf\u30ca\u30b3', '\u30bf\u30ed\u30a6'; null 18/31\u3002",
                        "example": "\u30a2\u30ea\u30b9"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u3002Fake corpus\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3060\u304c\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3059\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c10; \u89b3\u5bdf\u5024 '0312345678', '0901234567', '0612345678'; null 18/33\u3002",
                        "type": [
                            "string",
                            "null"
                        ],
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "message": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u6ce8\u6587\u30e1\u30c3\u30bb\u30fc\u30b8",
                        "description": "/shopping/shipping-edit \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u51e6\u7406\u7d50\u679c\u30e1\u30c3\u30bb\u30fc\u30b8\u3002\u6ce8\u6587\u6642\u304a\u554f\u3044\u5408\u308f\u305b\u6b04\u3067\u306f\u306a\u304f\u3001\u753b\u9762\u9077\u79fb\u3084\u5b8c\u4e86\u8868\u793a\u306e\u305f\u3081\u306e\u901a\u77e5\u6587\u3002",
                        "example": "\u914d\u9001\u306f\u5e73\u65e5\u5e0c\u671b\u3067\u3059\u3002"
                    },
                    "name02": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 80,
                        "title": "\u540d",
                        "description": "\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u30fb\u304a\u554f\u3044\u5408\u308f\u305b\u3067\u5171\u901a\u4f7f\u7528\u3055\u308c\u308b\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 1\u301c3; \u89b3\u5bdf\u5024 '\u30a2\u30ea\u30b9', '\u592a\u90ce', '\u6b21\u90ce', '\u82b1\u5b50', '\u4e09\u90ce', '\u6e08'\u3002",
                        "example": "\u30a2\u30ea\u30b9"
                    },
                    "kana01": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "pattern": "^[\u30a1-\u30f6\u30fc\u3000 ]*$",
                        "title": "\u30bb\u30a4",
                        "description": "\u59d3\u306e\u30ab\u30bf\u30ab\u30ca\u8aad\u307f\u3002\u5168\u89d2\u30ab\u30bf\u30ab\u30ca\u306e\u307f\u8a31\u53ef\uff08\u3072\u3089\u304c\u306a\u5165\u529b\u6642\u306f\u81ea\u52d5\u5909\u63db\uff09\u3002\u65e5\u672c\u306e\u6c0f\u540d\u5165\u529b\u306b\u7279\u6709\u306e\u8aad\u307f\u4eee\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 3\u301c3; \u89b3\u5bdf\u5024 '\u30e4\u30de\u30c0', '\u30b5\u30c8\u30a6'; null 18/31\u3002",
                        "example": "\u30e4\u30de\u30c0"
                    },
                    "name01": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 80,
                        "title": "\u59d3",
                        "description": "\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u30fb\u304a\u554f\u3044\u5408\u308f\u305b\u3067\u5171\u901a\u4f7f\u7528\u3055\u308c\u308b\u59d3 Fake\u89b3\u5bdf\u6587\u5b57\u9577 2\u301c2; \u89b3\u5bdf\u5024 '\u9234\u6728', '\u5c71\u7530', '\u4f50\u85e4', '\u9ad8\u6a4b', '\u9000\u4f1a'\u3002",
                        "example": "\u9234\u6728"
                    },
                    "addr02": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u756a\u5730\u30fb\u5efa\u7269\u540d",
                        "description": "\u756a\u5730\u30fb\u30d3\u30eb\u540d\u30fb\u90e8\u5c4b\u756a\u53f7\u7b49\u306e\u8a73\u7d30\u4f4f\u6240 Fake\u89b3\u5bdf\u6587\u5b57\u9577 5\u301c8; \u89b3\u5bdf\u5024 '\u795e\u5bae\u524d1-1-1', '\u4e38\u306e\u51852-2-2', '\u6885\u75301-1-1', '1-2-3'; null 18/33\u3002",
                        "example": "\u795e\u5bae\u524d1-1-1"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u6709\u7121\u3092\u3069\u3061\u3089\u3082\u53d7\u3051\u5165\u308c\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 7\u301c8; \u89b3\u5bdf\u5024 '1500001', '1000005', '5300001', '530-0001'; null 18/33\u3002",
                        "type": [
                            "string",
                            "null"
                        ],
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770c",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u90fd\u9053\u5e9c\u770cID\u3002\u4f4f\u6240\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u72b6\u614b\u3067\u306f0\u3001\u78ba\u5b9a\u4f4f\u6240\u3067\u306f1\u301c47\u3092\u4f7f\u3046\u3002 Fake\u89b3\u5bdf\u6570\u5024 13\u301c27; \u89b3\u5bdf\u5024 '13', '27'; null 3/9\u3002",
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "addr01": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u5e02\u533a\u753a\u6751",
                        "description": "\u90fd\u9053\u5e9c\u770c\u3088\u308a\u4e0b\u4f4d\u306e\u5e02\u533a\u753a\u6751\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 3\u301c7; \u89b3\u5bdf\u5024 '\u6e0b\u8c37\u533a', '\u5343\u4ee3\u7530\u533a', '\u5927\u962a\u5e02\u5317\u533a', '\u5927\u962a\u5e02\u5317\u533a\u6885\u7530'; null 18/33\u3002",
                        "example": "\u6e0b\u8c37\u533a"
                    },
                    "companyName": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u4f1a\u793e\u540d",
                        "description": "\u6cd5\u4eba\u9867\u5ba2\u306e\u793e\u540d\u3002B2B\u53d6\u5f15\u3084\u30a4\u30f3\u30dc\u30a4\u30b9\u3067\u4f7f\u7528 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c11; \u89b3\u5bdf\u5024 'Acme Corp.', '\u682a\u5f0f\u4f1a\u793eEC-CUBE'; null 24/32\u3002",
                        "example": "Acme Corp."
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "\u3053\u306e\u30ec\u30b9\u30dd\u30f3\u30b9/\u64cd\u4f5c\u304c\u5bfe\u5fdc\u3059\u308bALPS\u9077\u79fbID\u3002\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u306e\u72b6\u614b\u9077\u79fb\u8ffd\u8de1\u306b\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "name02",
                    "name01",
                    "addr01",
                    "transitionId"
                ]
            },
            "GET/shopping/shipping-multipleResponse": {
                "title": "GET /shopping/shipping-multiple response",
                "description": "GET /shopping/shipping-multiple response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "fields": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u9759\u7684\u8868\u793a\u30d5\u30a3\u30fc\u30eb\u30c9",
                        "description": "/shopping/shipping-multiple \u3067\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u3078\u6e21\u3059\u8868\u793a\u7528\u30d5\u30a3\u30fc\u30eb\u30c9\u96c6\u5408\u3002\u30d5\u30a9\u30fc\u30e0\u5165\u529b\u5024\u3067\u306f\u306a\u304f\u753b\u9762\u6587\u8108\u30c7\u30fc\u30bf\u3002",
                        "items": {
                            "type": "string",
                            "title": "\u8868\u793a\u30d5\u30a3\u30fc\u30eb\u30c9",
                            "minLength": 0,
                            "maxLength": 255,
                            "description": "/shopping/shipping-multiple \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u6ce8\u6587\u884c\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `fields` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002"
                        }
                    },
                    "submitTo": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 255,
                        "title": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5148\u30ea\u30f3\u30af",
                        "description": "/shopping/shipping-multiple \u306e\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u306b\u4f7f\u3046\u9001\u4fe1\u5148\u30ea\u30f3\u30af\u3002HTTP\u30e1\u30bd\u30c3\u30c9\u3068\u9077\u79fb\u5148\u3092\u307e\u3068\u3081\u3001unsafe\u64cd\u4f5c\u306e\u5165\u53e3\u3092\u660e\u793a\u3059\u308b\u3002"
                    },
                    "staticContent": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 255,
                        "title": "\u9759\u7684\u30b3\u30f3\u30c6\u30f3\u30c4",
                        "description": "/shopping/shipping-multiple \u3067\u8868\u793a\u3059\u308b\u898f\u7d04\u30fb\u30d8\u30eb\u30d7\u30fb\u30a8\u30e9\u30fc\u7b49\u306e\u9759\u7684\u30da\u30fc\u30b8\u672c\u6587\u3068\u30bb\u30af\u30b7\u30e7\u30f3\u60c5\u5831\u3002"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "\u3053\u306e\u30ec\u30b9\u30dd\u30f3\u30b9/\u64cd\u4f5c\u304c\u5bfe\u5fdc\u3059\u308bALPS\u9077\u79fbID\u3002\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u306e\u72b6\u614b\u9077\u79fb\u8ffd\u8de1\u306b\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "addresses": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u4f4f\u6240\u4e00\u89a7",
                        "description": "/shopping/shipping-multiple \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u4f4f\u6240\u4e00\u89a7\u3002\u914d\u5217\u8981\u7d20\u306fALPS\u610f\u5473\u3068Fake\u89b3\u5bdf\u306b\u57fa\u3065\u304d\u3001\u56fa\u5b9a\u3067\u304d\u306a\u3044\u52d5\u7684\u5217\u306f\u4f8b\u5916\u7406\u7531\u3092\u53f0\u5e33\u5316\u3059\u308b\u3002",
                        "items": {
                            "type": "object",
                            "title": "\u4f4f\u6240",
                            "description": "/shopping/shipping-multiple \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u4f4f\u6240\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `addresses` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002",
                            "properties": {
                                "addressId": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "title": "\u914d\u9001\u5148\u4f4f\u6240ID",
                                    "description": "dtb_customer_address.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e AddressEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f 32\u6841hex \u3092\u751f\u6210\u3057\u3001SQL \u5b9f\u88c5\u306f dtb_customer_address.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u6240\u6709\u8005\u306f customerId\u3001AUTHZ \u691c\u67fb\u306f CustomerAddressUpdated / CustomerAddressDeleted \u3067 getById \u2192 customerId \u4e00\u81f4\u78ba\u8a8d\u306e\u9806\u3067\u5b9f\u65bd Fake\u89b3\u5bdf\u6587\u5b57\u9577 32\u301c32; \u89b3\u5bdf\u5024 'addr00000000000000000000000000a1'\u3002",
                                    "example": "addr00000000000000000000000000a1",
                                    "minLength": 0,
                                    "maxLength": 128,
                                    "pattern": "^[A-Za-z0-9._:@/-]*$",
                                    "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                                },
                                "shippingAddressId": {
                                    "type": [
                                        "integer",
                                        "null"
                                    ],
                                    "minimum": 0,
                                    "maximum": 2147483647,
                                    "title": "\u914d\u9001\u5148ID",
                                    "description": "/shopping/shipping-multiple \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u5bfe\u8c61\u3092\u8b58\u5225\u3059\u308b\u914d\u9001\u5148ID\u3002DB\u63a1\u756aID\u3001Fake\u6587\u5b57\u5217ID\u3001\u4e92\u63db\u5883\u754cID\u306e\u3069\u308c\u306b\u8a72\u5f53\u3059\u308b\u304b\u3092schema\u306e\u578b\u3068\u30b3\u30e1\u30f3\u30c8\u3067\u5206\u3051\u308b\u3002",
                                    "$comment": "EC-CUBE\u5074\u306e\u63a1\u756aID\u3068\u3057\u3066\u6271\u3046\u3002"
                                },
                                "name01": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 80,
                                    "title": "\u59d3",
                                    "description": "\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u30fb\u304a\u554f\u3044\u5408\u308f\u305b\u3067\u5171\u901a\u4f7f\u7528\u3055\u308c\u308b\u59d3 Fake\u89b3\u5bdf\u6587\u5b57\u9577 2\u301c2; \u89b3\u5bdf\u5024 '\u9234\u6728', '\u5c71\u7530', '\u4f50\u85e4', '\u9ad8\u6a4b', '\u9000\u4f1a'\u3002",
                                    "example": "\u9234\u6728"
                                },
                                "name02": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 80,
                                    "title": "\u540d",
                                    "description": "\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u30fb\u304a\u554f\u3044\u5408\u308f\u305b\u3067\u5171\u901a\u4f7f\u7528\u3055\u308c\u308b\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 1\u301c3; \u89b3\u5bdf\u5024 '\u30a2\u30ea\u30b9', '\u592a\u90ce', '\u6b21\u90ce', '\u82b1\u5b50', '\u4e09\u90ce', '\u6e08'\u3002",
                                    "example": "\u30a2\u30ea\u30b9"
                                },
                                "postalCode": {
                                    "title": "\u90f5\u4fbf\u756a\u53f7",
                                    "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u6709\u7121\u3092\u3069\u3061\u3089\u3082\u53d7\u3051\u5165\u308c\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 7\u301c8; \u89b3\u5bdf\u5024 '1500001', '1000005', '5300001', '530-0001'; null 18/33\u3002",
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "pattern": "^\\d{3}-?\\d{4}$",
                                    "example": "1500001"
                                },
                                "pref": {
                                    "title": "\u90fd\u9053\u5e9c\u770c",
                                    "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u90fd\u9053\u5e9c\u770cID\u3002\u4f4f\u6240\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u72b6\u614b\u3067\u306f0\u3001\u78ba\u5b9a\u4f4f\u6240\u3067\u306f1\u301c47\u3092\u4f7f\u3046\u3002 Fake\u89b3\u5bdf\u6570\u5024 13\u301c27; \u89b3\u5bdf\u5024 '13', '27'; null 3/9\u3002",
                                    "type": [
                                        "integer",
                                        "null"
                                    ],
                                    "minimum": 0,
                                    "maximum": 47,
                                    "example": 13
                                },
                                "addr01": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 32,
                                    "title": "\u5e02\u533a\u753a\u6751",
                                    "description": "\u90fd\u9053\u5e9c\u770c\u3088\u308a\u4e0b\u4f4d\u306e\u5e02\u533a\u753a\u6751\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 3\u301c7; \u89b3\u5bdf\u5024 '\u6e0b\u8c37\u533a', '\u5343\u4ee3\u7530\u533a', '\u5927\u962a\u5e02\u5317\u533a', '\u5927\u962a\u5e02\u5317\u533a\u6885\u7530'; null 18/33\u3002",
                                    "example": "\u6e0b\u8c37\u533a"
                                },
                                "addr02": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 32,
                                    "title": "\u756a\u5730\u30fb\u5efa\u7269\u540d",
                                    "description": "\u756a\u5730\u30fb\u30d3\u30eb\u540d\u30fb\u90e8\u5c4b\u756a\u53f7\u7b49\u306e\u8a73\u7d30\u4f4f\u6240 Fake\u89b3\u5bdf\u6587\u5b57\u9577 5\u301c8; \u89b3\u5bdf\u5024 '\u795e\u5bae\u524d1-1-1', '\u4e38\u306e\u51852-2-2', '\u6885\u75301-1-1', '1-2-3'; null 18/33\u3002",
                                    "example": "\u795e\u5bae\u524d1-1-1"
                                },
                                "phoneNumber": {
                                    "title": "\u96fb\u8a71\u756a\u53f7",
                                    "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u3002Fake corpus\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3060\u304c\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3059\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c10; \u89b3\u5bdf\u5024 '0312345678', '0901234567', '0612345678'; null 18/33\u3002",
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                                    "minLength": 10,
                                    "maxLength": 13,
                                    "example": "0312345678"
                                }
                            },
                            "additionalProperties": false,
                            "$comment": "\u914d\u5217\u8981\u7d20\u306fFake/Resource\u3067\u89b3\u5bdf\u3055\u308c\u305f\u65e2\u77e5property\u306b\u56fa\u5b9a\u3059\u308b\u3002\u65b0\u3057\u3044\u5217\u304c\u5fc5\u8981\u306b\u306a\u3063\u305f\u5834\u5408\u306fSemantic-Ex\u89b3\u5bdf\u306b\u8ffd\u52a0\u3057\u3066schema\u3092\u66f4\u65b0\u3059\u308b\u3002"
                        },
                        "minItems": 0
                    },
                    "cartItems": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u30ab\u30fc\u30c8\u660e\u7d30\u4e00\u89a7",
                        "description": "/shopping/shipping-multiple \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u30ab\u30fc\u30c8\u660e\u7d30\u4e00\u89a7\u3002\u914d\u5217\u8981\u7d20\u306fALPS\u610f\u5473\u3068Fake\u89b3\u5bdf\u306b\u57fa\u3065\u304d\u3001\u56fa\u5b9a\u3067\u304d\u306a\u3044\u52d5\u7684\u5217\u306f\u4f8b\u5916\u7406\u7531\u3092\u53f0\u5e33\u5316\u3059\u308b\u3002",
                        "items": {
                            "type": "object",
                            "title": "\u30ab\u30fc\u30c8\u660e\u7d30",
                            "description": "/shopping/shipping-multiple \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u30ab\u30fc\u30c8\u660e\u7d30\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `cartItems` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002",
                            "properties": {
                                "productCode": {
                                    "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                                    "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 \u5546\u54c1\u3092\u8b58\u5225\u3059\u308bSKU\u3002Fake corpus\u3067\u306fASCII\u82f1\u6570\u30fb\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3067\u3001\u53d7\u6ce8\u660e\u7d30/\u30ab\u30fc\u30c8\u660e\u7d30\u306e\u7d50\u5408\u30ad\u30fc\u306b\u306a\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c26\u3002",
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 64,
                                    "example": "sample-001"
                                },
                                "productId": {
                                    "type": [
                                        "integer",
                                        "null"
                                    ],
                                    "minimum": 0,
                                    "maximum": 2147483647,
                                    "title": "\u5546\u54c1ID",
                                    "description": "dtb_product.id \u2014 \u5546\u54c1\u30d8\u30c3\u30c0\u306e\u4ee3\u7406\u30ad\u30fc\u3002\u5546\u54c1\u8a73\u7d30\u30ea\u30f3\u30af\uff08EC-CUBE \u306e url('product_detail', {id})\uff09\u306e\u30bf\u30fc\u30b2\u30c3\u30c8\u3068\u3057\u3066\u753b\u9762\u306b\u9732\u51fa\u3059\u308b\u3002\u81ea\u7136\u30ad\u30fc productCode\uff08dtb_product_class \u5074\uff09\u3068\u306f\u5225\u7269\u3067\u3001\u3053\u3061\u3089\u306f\u5546\u54c1\u30d8\u30c3\u30c0\u5358\u4f4d\u306e\u8b58\u5225\u5b50",
                                    "$comment": "EC-CUBE\u5074\u306e\u63a1\u756aID\u3068\u3057\u3066\u6271\u3046\u3002"
                                },
                                "productClassId": {
                                    "type": [
                                        "integer",
                                        "null"
                                    ],
                                    "minimum": 0,
                                    "maximum": 2147483647,
                                    "title": "\u5546\u54c1\u898f\u683cID",
                                    "description": "dtb_product_class.id \u2014 \u7279\u5b9a SKU\uff08\u898f\u683c\u30d0\u30ea\u30a8\u30fc\u30b7\u30e7\u30f3\u884c\uff09\u306e\u4ee3\u7406\u30ad\u30fc\u3002EC-CUBE \u306e\u30ab\u30fc\u30c8\u753b\u9762\u3067\u306f\u524a\u9664/\u6570\u91cf\u5897\u6e1b\u30ea\u30f3\u30af\uff08cart_handle_item \u306e productClassId \u30d1\u30e9\u30e1\u30fc\u30bf\uff09\u306e\u30ad\u30fc\u3068\u3057\u3066\u4f7f\u308f\u308c\u308b\u3002CartItem 1\u4ef6\u306f default class \u3067\u306f\u306a\u304f\u8cfc\u5165\u3055\u308c\u305f\u5177\u4f53\u7684\u306a product_class \u3092\u6307\u3059",
                                    "$comment": "EC-CUBE\u5074\u306e\u63a1\u756aID\u3068\u3057\u3066\u6271\u3046\u3002"
                                },
                                "productName": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 128,
                                    "title": "\u5546\u54c1\u540d",
                                    "description": "\u5546\u54c1\u306e\u8868\u793a\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 6\u301c17\u3002",
                                    "example": "\u30b5\u30f3\u30d7\u30eb\u5546\u54c1 A"
                                },
                                "quantity": {
                                    "title": "\u6570\u91cf",
                                    "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 Fake\u89b3\u5bdf\u6570\u5024 1\u301c3; \u89b3\u5bdf\u5024 '1', '2', '3'\u3002",
                                    "type": [
                                        "integer",
                                        "null"
                                    ],
                                    "minimum": 1,
                                    "maximum": 999,
                                    "example": 1
                                },
                                "price": {
                                    "title": "\u8ca9\u58f2\u4fa1\u683c\uff08\u8868\u793a/\u8a08\u7b97\u7528\uff09",
                                    "description": "\u5b9f\u969b\u306e\u8ca9\u58f2\u4fa1\u683c\uff08\u7a0e\u629c\uff09\u3002\u7a0e\u8a08\u7b97\u30fb\u5c0f\u8a08\u8a08\u7b97\u306e\u30d9\u30fc\u30b9 Fake\u89b3\u5bdf\u6570\u5024 800\u301c13500; \u89b3\u5bdf\u5024 '1200', '8000', '1500', '800', '1000', '13500', '9800'\u3002",
                                    "type": [
                                        "integer",
                                        "null"
                                    ],
                                    "minimum": 0,
                                    "maximum": 999999999,
                                    "example": 1200
                                },
                                "price02": {
                                    "title": "\u8ca9\u58f2\u4fa1\u683c",
                                    "description": "\u5b9f\u969b\u306e\u8ca9\u58f2\u4fa1\u683c\uff08\u7a0e\u629c\uff09\u3002\u7a0e\u8a08\u7b97\u30fb\u5c0f\u8a08\u8a08\u7b97\u306e\u30d9\u30fc\u30b9 Fake\u89b3\u5bdf\u6570\u5024 800\u301c28000\u3002",
                                    "type": [
                                        "integer",
                                        "null"
                                    ],
                                    "minimum": 0,
                                    "maximum": 999999999,
                                    "example": 3500
                                },
                                "totalPrice": {
                                    "title": "\u30ab\u30fc\u30c8\u5408\u8a08\u91d1\u984d",
                                    "description": "\u30ab\u30fc\u30c8\u5185\u306e\u7a0e\u8fbc\u5408\u8a08\u91d1\u984d\u3002PurchaseFlow.calculateTotal()\u3067\u6bce\u56de\u518d\u8a08\u7b97\u3055\u308c\u308b\u30ad\u30e3\u30c3\u30b7\u30e5\u5024\u3002\u53d7\u6ce8\u306etotal\u3068\u306f\u5225\u30d7\u30ed\u30d1\u30c6\u30a3 Fake\u89b3\u5bdf\u6570\u5024 0\u301c3600; \u89b3\u5bdf\u5024 '0', '1500', '3600'\u3002",
                                    "type": [
                                        "integer",
                                        "null"
                                    ],
                                    "minimum": 0,
                                    "maximum": 999999999,
                                    "example": 0
                                },
                                "cartKey": {
                                    "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                                    "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b \u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u30ad\u30fc\u3002ALPS\u306ecartKey\u306f\u30bb\u30c3\u30b7\u30e7\u30f3\u63a5\u982d\u8f9e\u3068\u8ca9\u58f2\u7a2e\u5225ID\u304b\u3089\u69cb\u6210\u3055\u308c\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 18\u301c23; \u89b3\u5bdf\u5024 'session-prefix-1_1', 'session-prefix-1_2', 'session-checkout-pilot5'\u3002",
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 3,
                                    "maxLength": 128,
                                    "pattern": "^.+_[0-9]+$",
                                    "example": "session-prefix-1_1"
                                },
                                "unitPrice": {
                                    "title": "\u5358\u4fa1\uff08\u8868\u793a/\u8a08\u7b97\u7528\uff09",
                                    "description": "\u660e\u7d301\u4ef6\u3042\u305f\u308a\u306e\u5358\u4fa1\u3002\u53d7\u6ce8/\u30ab\u30fc\u30c8\u660e\u7d30\u30fb\u304a\u6c17\u306b\u5165\u308a\u30b9\u30ca\u30c3\u30d7\u30b7\u30e7\u30c3\u30c8\u3067\u306f\u8ffd\u52a0\u6642\u70b9\u306e price02 \u3092\u30b9\u30ca\u30c3\u30d7\u30b7\u30e7\u30c3\u30c8\u3057\u3066\u4fdd\u6301\u3059\u308b\uff08\u5f8c\u306e\u5024\u5f15\u304d\u3084\u30de\u30b9\u30bf\u6539\u5b9a\u306b\u5f71\u97ff\u3055\u308c\u306a\u3044\uff09\u3002BeMart \u5074\u3067\u306f `int` \u5186\u6574\u6570 Fake\u89b3\u5bdf\u6570\u5024 1200\u301c9800; \u89b3\u5bdf\u5024 '1200', '9800'\u3002",
                                    "type": [
                                        "integer",
                                        "null"
                                    ],
                                    "minimum": 0,
                                    "maximum": 999999999,
                                    "example": 1200
                                },
                                "fileName": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 1,
                                    "maxLength": 255,
                                    "title": "\u30d5\u30a1\u30a4\u30eb\u540d",
                                    "description": "\u5546\u54c1\u753b\u50cf\u306e\u30d5\u30a1\u30a4\u30eb\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 12\u301c15; \u89b3\u5bdf\u5024 'Mail/order.twig', 'Mail/entry.twig', 'sample-a.jpg', 'sample-b.jpg'\u3002",
                                    "example": "Mail/order.twig"
                                }
                            },
                            "additionalProperties": false,
                            "$comment": "\u914d\u5217\u8981\u7d20\u306fFake/Resource\u3067\u89b3\u5bdf\u3055\u308c\u305f\u65e2\u77e5property\u306b\u56fa\u5b9a\u3059\u308b\u3002\u65b0\u3057\u3044\u5217\u304c\u5fc5\u8981\u306b\u306a\u3063\u305f\u5834\u5408\u306fSemantic-Ex\u89b3\u5bdf\u306b\u8ffd\u52a0\u3057\u3066schema\u3092\u66f4\u65b0\u3059\u308b\u3002"
                        },
                        "minItems": 0
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "transitionId",
                    "addresses",
                    "cartItems"
                ]
            },
            "POST/shopping/shipping-multipleResponse": {
                "title": "POST /shopping/shipping-multiple response",
                "description": "POST /shopping/shipping-multiple response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "message": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u6ce8\u6587\u30e1\u30c3\u30bb\u30fc\u30b8",
                        "description": "/shopping/shipping-multiple \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u51e6\u7406\u7d50\u679c\u30e1\u30c3\u30bb\u30fc\u30b8\u3002\u6ce8\u6587\u6642\u304a\u554f\u3044\u5408\u308f\u305b\u6b04\u3067\u306f\u306a\u304f\u3001\u753b\u9762\u9077\u79fb\u3084\u5b8c\u4e86\u8868\u793a\u306e\u305f\u3081\u306e\u901a\u77e5\u6587\u3002",
                        "example": "\u914d\u9001\u306f\u5e73\u65e5\u5e0c\u671b\u3067\u3059\u3002"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "\u3053\u306e\u30ec\u30b9\u30dd\u30f3\u30b9/\u64cd\u4f5c\u304c\u5bfe\u5fdc\u3059\u308bALPS\u9077\u79fbID\u3002\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u306e\u72b6\u614b\u9077\u79fb\u8ffd\u8de1\u306b\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "allocationCount": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 2147483647,
                        "title": "\u4ef6\u6570",
                        "description": "/shopping/shipping-multiple \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8fd4\u3059\u4ef6\u6570\u3002\u4e00\u89a7\u30fb\u96c6\u8a08\u30fb\u51e6\u7406\u7d50\u679c\u306e\u898f\u6a21\u3092\u8868\u3059\u975e\u8ca0\u6574\u6570\u3002"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "transitionId",
                    "allocationCount"
                ]
            },
            "GET/shopping/shipping-multiple-editResponse": {
                "title": "GET /shopping/shipping-multiple-edit response",
                "description": "GET /shopping/shipping-multiple-edit response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "form": {
                        "type": [
                            "object",
                            "array",
                            "null"
                        ],
                        "title": "\u5165\u529b\u30d5\u30a9\u30fc\u30e0",
                        "description": "Aura/WebForm\u7531\u6765\u306e\u30d5\u30a9\u30fc\u30e0\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3002\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5185\u90e8\u69cb\u9020\u306e\u305f\u3081schema\u3067\u306f\u5b58\u5728\u3068\u578b\u306e\u307f\u3092\u5951\u7d04\u3059\u308b\u3002",
                        "$comment": "Aura/WebForm\u7531\u6765\u306e\u4e0d\u900f\u660e\u30d5\u30a9\u30fc\u30e0\u8868\u73fe\u3002Resource\u5883\u754c\u3067\u306f\u30d5\u30a9\u30fc\u30e0\u306e\u5b58\u5728\u3068\u30b3\u30f3\u30c6\u30ad\u30b9\u30c8\u3060\u3051\u3092\u5951\u7d04\u3057\u3001\u5185\u90e8\u69cb\u9020\u306f\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5883\u754c\u306b\u59d4\u306d\u308b\u305f\u3081\u8ffd\u52a0\u30ad\u30fc\u5236\u7d04\u3092\u7f6e\u304b\u306a\u3044\u3002"
                    },
                    "fields": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u9759\u7684\u8868\u793a\u30d5\u30a3\u30fc\u30eb\u30c9",
                        "description": "/shopping/shipping-multiple-edit \u3067\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u3078\u6e21\u3059\u8868\u793a\u7528\u30d5\u30a3\u30fc\u30eb\u30c9\u96c6\u5408\u3002\u30d5\u30a9\u30fc\u30e0\u5165\u529b\u5024\u3067\u306f\u306a\u304f\u753b\u9762\u6587\u8108\u30c7\u30fc\u30bf\u3002",
                        "items": {
                            "type": "string",
                            "title": "\u8868\u793a\u30d5\u30a3\u30fc\u30eb\u30c9",
                            "minLength": 0,
                            "maxLength": 255,
                            "description": "/shopping/shipping-multiple-edit \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u6ce8\u6587\u884c\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `fields` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002"
                        }
                    },
                    "submitTo": {
                        "type": [
                            "object",
                            "null"
                        ],
                        "title": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5148\u30ea\u30f3\u30af",
                        "description": "/shopping/shipping-multiple-edit \u306e\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u306b\u4f7f\u3046\u9001\u4fe1\u5148\u30ea\u30f3\u30af\u3002HTTP\u30e1\u30bd\u30c3\u30c9\u3068\u9077\u79fb\u5148\u3092\u307e\u3068\u3081\u3001unsafe\u64cd\u4f5c\u306e\u5165\u53e3\u3092\u660e\u793a\u3059\u308b\u3002",
                        "properties": {
                            "href": {
                                "title": "\u30ea\u30f3\u30afURI\u53c2\u7167\uff08URI\u53c2\u7167\uff09",
                                "description": "\u30da\u30fc\u30b8\u306eURL\u30d1\u30b9\uff08Symfony\u30eb\u30fc\u30c8\u540d\u3002\u4f8b: homepage, product_list\uff09",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "method": {
                                "type": [
                                    "string",
                                    "null"
                                ],
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ],
                                "title": "HTTP\u30e1\u30bd\u30c3\u30c9",
                                "description": "/shopping/shipping-multiple-edit \u306e\u30ea\u30f3\u30af\u307e\u305f\u306f\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u3067\u4f7f\u3046HTTP\u30e1\u30bd\u30c3\u30c9\u3002GET/POST\u7b49\u306e\u9077\u79fb\u65b9\u6cd5\u3092\u8868\u3059\u3002"
                            }
                        },
                        "additionalProperties": false,
                        "required": [
                            "href",
                            "method"
                        ]
                    },
                    "staticContent": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 255,
                        "title": "\u9759\u7684\u30b3\u30f3\u30c6\u30f3\u30c4",
                        "description": "/shopping/shipping-multiple-edit \u3067\u8868\u793a\u3059\u308b\u898f\u7d04\u30fb\u30d8\u30eb\u30d7\u30fb\u30a8\u30e9\u30fc\u7b49\u306e\u9759\u7684\u30da\u30fc\u30b8\u672c\u6587\u3068\u30bb\u30af\u30b7\u30e7\u30f3\u60c5\u5831\u3002"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "\u3053\u306e\u30ec\u30b9\u30dd\u30f3\u30b9/\u64cd\u4f5c\u304c\u5bfe\u5fdc\u3059\u308bALPS\u9077\u79fbID\u3002\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u306e\u72b6\u614b\u9077\u79fb\u8ffd\u8de1\u306b\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "csrfToken": {
                        "title": "\u51e6\u7406\u8b58\u5225\u5b50",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u306e\u507d\u9020\u3092\u9632\u3050\u305f\u3081\u306b\u9001\u4fe1\u5143\u753b\u9762\u3067\u767a\u884c\u3055\u308c\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "transitionId",
                    "csrfToken"
                ]
            },
            "POST/shopping/shipping-multiple-editResponse": {
                "title": "POST /shopping/shipping-multiple-edit response",
                "description": "POST /shopping/shipping-multiple-edit response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "kana02": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "pattern": "^[\u30a1-\u30f6\u30fc\u3000 ]*$",
                        "title": "\u30e1\u30a4",
                        "description": "\u540d\u306e\u30ab\u30bf\u30ab\u30ca\u8aad\u307f\u3002\u5168\u89d2\u30ab\u30bf\u30ab\u30ca\u306e\u307f\u8a31\u53ef\uff08\u3072\u3089\u304c\u306a\u5165\u529b\u6642\u306f\u81ea\u52d5\u5909\u63db\uff09\u3002\u65e5\u672c\u306e\u6c0f\u540d\u5165\u529b\u306b\u7279\u6709\u306e\u8aad\u307f\u4eee\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 3\u301c3; \u89b3\u5bdf\u5024 '\u30a2\u30ea\u30b9', '\u30cf\u30ca\u30b3', '\u30bf\u30ed\u30a6'; null 18/31\u3002",
                        "example": "\u30a2\u30ea\u30b9"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u3002Fake corpus\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3060\u304c\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3059\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c10; \u89b3\u5bdf\u5024 '0312345678', '0901234567', '0612345678'; null 18/33\u3002",
                        "type": [
                            "string",
                            "null"
                        ],
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "message": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u6ce8\u6587\u30e1\u30c3\u30bb\u30fc\u30b8",
                        "description": "/shopping/shipping-multiple-edit \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u51e6\u7406\u7d50\u679c\u30e1\u30c3\u30bb\u30fc\u30b8\u3002\u6ce8\u6587\u6642\u304a\u554f\u3044\u5408\u308f\u305b\u6b04\u3067\u306f\u306a\u304f\u3001\u753b\u9762\u9077\u79fb\u3084\u5b8c\u4e86\u8868\u793a\u306e\u305f\u3081\u306e\u901a\u77e5\u6587\u3002",
                        "example": "\u914d\u9001\u306f\u5e73\u65e5\u5e0c\u671b\u3067\u3059\u3002"
                    },
                    "name02": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 80,
                        "title": "\u540d",
                        "description": "\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u30fb\u304a\u554f\u3044\u5408\u308f\u305b\u3067\u5171\u901a\u4f7f\u7528\u3055\u308c\u308b\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 1\u301c3; \u89b3\u5bdf\u5024 '\u30a2\u30ea\u30b9', '\u592a\u90ce', '\u6b21\u90ce', '\u82b1\u5b50', '\u4e09\u90ce', '\u6e08'\u3002",
                        "example": "\u30a2\u30ea\u30b9"
                    },
                    "kana01": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "pattern": "^[\u30a1-\u30f6\u30fc\u3000 ]*$",
                        "title": "\u30bb\u30a4",
                        "description": "\u59d3\u306e\u30ab\u30bf\u30ab\u30ca\u8aad\u307f\u3002\u5168\u89d2\u30ab\u30bf\u30ab\u30ca\u306e\u307f\u8a31\u53ef\uff08\u3072\u3089\u304c\u306a\u5165\u529b\u6642\u306f\u81ea\u52d5\u5909\u63db\uff09\u3002\u65e5\u672c\u306e\u6c0f\u540d\u5165\u529b\u306b\u7279\u6709\u306e\u8aad\u307f\u4eee\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 3\u301c3; \u89b3\u5bdf\u5024 '\u30e4\u30de\u30c0', '\u30b5\u30c8\u30a6'; null 18/31\u3002",
                        "example": "\u30e4\u30de\u30c0"
                    },
                    "name01": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 80,
                        "title": "\u59d3",
                        "description": "\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u30fb\u304a\u554f\u3044\u5408\u308f\u305b\u3067\u5171\u901a\u4f7f\u7528\u3055\u308c\u308b\u59d3 Fake\u89b3\u5bdf\u6587\u5b57\u9577 2\u301c2; \u89b3\u5bdf\u5024 '\u9234\u6728', '\u5c71\u7530', '\u4f50\u85e4', '\u9ad8\u6a4b', '\u9000\u4f1a'\u3002",
                        "example": "\u9234\u6728"
                    },
                    "addr02": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u756a\u5730\u30fb\u5efa\u7269\u540d",
                        "description": "\u756a\u5730\u30fb\u30d3\u30eb\u540d\u30fb\u90e8\u5c4b\u756a\u53f7\u7b49\u306e\u8a73\u7d30\u4f4f\u6240 Fake\u89b3\u5bdf\u6587\u5b57\u9577 5\u301c8; \u89b3\u5bdf\u5024 '\u795e\u5bae\u524d1-1-1', '\u4e38\u306e\u51852-2-2', '\u6885\u75301-1-1', '1-2-3'; null 18/33\u3002",
                        "example": "\u795e\u5bae\u524d1-1-1"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u6709\u7121\u3092\u3069\u3061\u3089\u3082\u53d7\u3051\u5165\u308c\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 7\u301c8; \u89b3\u5bdf\u5024 '1500001', '1000005', '5300001', '530-0001'; null 18/33\u3002",
                        "type": [
                            "string",
                            "null"
                        ],
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770c",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u90fd\u9053\u5e9c\u770cID\u3002\u4f4f\u6240\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u72b6\u614b\u3067\u306f0\u3001\u78ba\u5b9a\u4f4f\u6240\u3067\u306f1\u301c47\u3092\u4f7f\u3046\u3002 Fake\u89b3\u5bdf\u6570\u5024 13\u301c27; \u89b3\u5bdf\u5024 '13', '27'; null 3/9\u3002",
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "addr01": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u5e02\u533a\u753a\u6751",
                        "description": "\u90fd\u9053\u5e9c\u770c\u3088\u308a\u4e0b\u4f4d\u306e\u5e02\u533a\u753a\u6751\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 3\u301c7; \u89b3\u5bdf\u5024 '\u6e0b\u8c37\u533a', '\u5343\u4ee3\u7530\u533a', '\u5927\u962a\u5e02\u5317\u533a', '\u5927\u962a\u5e02\u5317\u533a\u6885\u7530'; null 18/33\u3002",
                        "example": "\u6e0b\u8c37\u533a"
                    },
                    "companyName": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u4f1a\u793e\u540d",
                        "description": "\u6cd5\u4eba\u9867\u5ba2\u306e\u793e\u540d\u3002B2B\u53d6\u5f15\u3084\u30a4\u30f3\u30dc\u30a4\u30b9\u3067\u4f7f\u7528 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c11; \u89b3\u5bdf\u5024 'Acme Corp.', '\u682a\u5f0f\u4f1a\u793eEC-CUBE'; null 24/32\u3002",
                        "example": "Acme Corp."
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "\u3053\u306e\u30ec\u30b9\u30dd\u30f3\u30b9/\u64cd\u4f5c\u304c\u5bfe\u5fdc\u3059\u308bALPS\u9077\u79fbID\u3002\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u306e\u72b6\u614b\u9077\u79fb\u8ffd\u8de1\u306b\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "name02",
                    "name01",
                    "addr01",
                    "transitionId"
                ]
            },
            "GET/admin/block/blockResponse": {
                "title": "GET /admin/block/block response",
                "description": "GET /admin/block/block response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "blockId": {
                        "type": "string",
                        "title": "\u30d6\u30ed\u30c3\u30afID",
                        "description": "dtb_block.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002\u65b0\u898f\u4f5c\u6210\u30d5\u30a9\u30fc\u30e0\u3067\u306f\u7a7a\u6587\u5b57\u3001\u7de8\u96c6\u30d5\u30a9\u30fc\u30e0\u3067\u306f\u65e2\u5b58\u30d6\u30ed\u30c3\u30afID\u3002",
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "1"
                    },
                    "blockName": {
                        "type": "string",
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u30d6\u30ed\u30c3\u30af\u540d",
                        "description": "\u30d6\u30ed\u30c3\u30af\u306e\u8868\u793a\u540d\u3002\u65b0\u898f\u4f5c\u6210\u30d5\u30a9\u30fc\u30e0\u3067\u306f\u7a7a\u6587\u5b57\u3001\u7de8\u96c6\u30d5\u30a9\u30fc\u30e0\u3067\u306f\u4fdd\u5b58\u6e08\u307f\u5024\u3002"
                    },
                    "blockFileName": {
                        "type": "string",
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u30d6\u30ed\u30c3\u30af\u30d5\u30a1\u30a4\u30eb\u540d",
                        "description": "\u30d6\u30ed\u30c3\u30af\u306e\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u30d5\u30a1\u30a4\u30eb\u540d\u3002\u65b0\u898f\u4f5c\u6210\u30d5\u30a9\u30fc\u30e0\u3067\u306f\u7a7a\u6587\u5b57\u3001\u7de8\u96c6\u30d5\u30a9\u30fc\u30e0\u3067\u306f\u4fdd\u5b58\u6e08\u307f\u5024\u3002"
                    },
                    "blockDeletable": {
                        "type": "boolean",
                        "title": "\u524a\u9664\u53ef\u5426",
                        "description": "\u7ba1\u7406\u753b\u9762\u3067\u524a\u9664\u53ef\u80fd\u306a\u30e6\u30fc\u30b6\u30fc\u5b9a\u7fa9\u30d6\u30ed\u30c3\u30af\u304b\u3069\u3046\u304b\u3002"
                    },
                    "form": {
                        "type": [
                            "object",
                            "array",
                            "null"
                        ],
                        "title": "\u5165\u529b\u30d5\u30a9\u30fc\u30e0",
                        "description": "Aura/WebForm\u7531\u6765\u306e\u30d5\u30a9\u30fc\u30e0\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3002\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5185\u90e8\u69cb\u9020\u306e\u305f\u3081schema\u3067\u306f\u5b58\u5728\u3068\u578b\u306e\u307f\u3092\u5951\u7d04\u3059\u308b\u3002",
                        "$comment": "Aura/WebForm\u7531\u6765\u306e\u4e0d\u900f\u660e\u30d5\u30a9\u30fc\u30e0\u8868\u73fe\u3002Resource\u5883\u754c\u3067\u306f\u30d5\u30a9\u30fc\u30e0\u306e\u5b58\u5728\u3068\u30b3\u30f3\u30c6\u30ad\u30b9\u30c8\u3060\u3051\u3092\u5951\u7d04\u3057\u3001\u5185\u90e8\u69cb\u9020\u306f\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5883\u754c\u306b\u59d4\u306d\u308b\u305f\u3081\u8ffd\u52a0\u30ad\u30fc\u5236\u7d04\u3092\u7f6e\u304b\u306a\u3044\u3002"
                    },
                    "csrfToken": {
                        "title": "\u51e6\u7406\u8b58\u5225\u5b50",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u306e\u507d\u9020\u3092\u9632\u3050\u305f\u3081\u306b\u9001\u4fe1\u5143\u753b\u9762\u3067\u767a\u884c\u3055\u308c\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape."
            },
            "PUT/admin/block/blockResponse": {
                "title": "PUT /admin/block/block response",
                "description": "PUT /admin/block/block response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "blockDeletable": {
                        "type": [
                            "boolean",
                            "null"
                        ],
                        "title": "\u30d6\u30ed\u30c3\u30af\u524a\u9664\u53ef\u80fd\u30d5\u30e9\u30b0",
                        "description": "\u3053\u306e\u30d6\u30ed\u30c3\u30af\u3092\u7ba1\u7406\u753b\u9762\u304b\u3089\u524a\u9664\u3067\u304d\u308b\u304b\u3002\u30b7\u30b9\u30c6\u30e0\u6a19\u6e96\u30d6\u30ed\u30c3\u30af\u306f\u524a\u9664\u4e0d\u53ef \u89b3\u5bdf\u5024 'false', 'true'\u3002",
                        "example": "false"
                    },
                    "blockName": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u30d6\u30ed\u30c3\u30af\u540d",
                        "description": "\u30d6\u30ed\u30c3\u30af\u306e\u8868\u793a\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 4\u301c8; \u89b3\u5bdf\u5024 '\u30d8\u30c3\u30c0\u30fc', '\u30e6\u30fc\u30b6\u30fc\u30d6\u30ed\u30c3\u30af'\u3002",
                        "example": "\u30d8\u30c3\u30c0\u30fc"
                    },
                    "blockId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u30d6\u30ed\u30c3\u30afID",
                        "description": "dtb_block.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e BlockEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f `bk-` \u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9\u4ed8\u304d\u306e\u82f1\u6570\u5b57\u3092\u751f\u6210\u3057\uff08\u30b7\u30fc\u30c9 `bk-header` \u3092\u542b\u3080\uff09\u3001SQL \u5b9f\u88c5\u306f dtb_block.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u975e\u6570\u5024 ID \u306f SqlBlockStorage \u3067\u306f miss \u3068\u3057\u3066\u6271\u308f\u308c getById / put / remove \u306e\u3044\u305a\u308c\u3082 404 \u7d4c\u8def (BlockUpdated / BlockDeleted) \u3092\u8e0f\u3080\u305f\u3081\u3001\u30b7\u30fc\u30c9\u30cf\u30f3\u30c9\u30eb `bk-header` \u3084 `nonexistent-zzz` \u306f Fake / SQL \u53cc\u65b9\u3067 404 \u304c\u540c\u5f62 Fake\u89b3\u5bdf\u6587\u5b57\u9577 7\u301c9; \u89b3\u5bdf\u5024 'bk-header', 'bk-user'\u3002",
                        "example": "bk-header",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    },
                    "blockFileName": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u30d6\u30ed\u30c3\u30af\u30d5\u30a1\u30a4\u30eb\u540d",
                        "description": "\u30d6\u30ed\u30c3\u30af\u306e\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u30d5\u30a1\u30a4\u30eb\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 6\u301c10; \u89b3\u5bdf\u5024 'header', 'user_block'\u3002",
                        "example": "header"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "blockDeletable",
                    "blockName",
                    "blockId",
                    "blockFileName"
                ]
            },
            "DELETE/admin/block/blockResponse": {
                "title": "DELETE /admin/block/block response",
                "description": "DELETE /admin/block/block response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "message": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u51e6\u7406\u30e1\u30c3\u30bb\u30fc\u30b8",
                        "description": "/admin/block/block \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u51e6\u7406\u7d50\u679c\u30e1\u30c3\u30bb\u30fc\u30b8\u3002\u6ce8\u6587\u6642\u304a\u554f\u3044\u5408\u308f\u305b\u6b04\u3067\u306f\u306a\u304f\u3001\u753b\u9762\u9077\u79fb\u3084\u5b8c\u4e86\u8868\u793a\u306e\u305f\u3081\u306e\u901a\u77e5\u6587\u3002",
                        "example": "\u914d\u9001\u306f\u5e73\u65e5\u5e0c\u671b\u3067\u3059\u3002"
                    },
                    "blockId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u30d6\u30ed\u30c3\u30afID",
                        "description": "dtb_block.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e BlockEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f `bk-` \u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9\u4ed8\u304d\u306e\u82f1\u6570\u5b57\u3092\u751f\u6210\u3057\uff08\u30b7\u30fc\u30c9 `bk-header` \u3092\u542b\u3080\uff09\u3001SQL \u5b9f\u88c5\u306f dtb_block.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u975e\u6570\u5024 ID \u306f SqlBlockStorage \u3067\u306f miss \u3068\u3057\u3066\u6271\u308f\u308c getById / put / remove \u306e\u3044\u305a\u308c\u3082 404 \u7d4c\u8def (BlockUpdated / BlockDeleted) \u3092\u8e0f\u3080\u305f\u3081\u3001\u30b7\u30fc\u30c9\u30cf\u30f3\u30c9\u30eb `bk-header` \u3084 `nonexistent-zzz` \u306f Fake / SQL \u53cc\u65b9\u3067 404 \u304c\u540c\u5f62 Fake\u89b3\u5bdf\u6587\u5b57\u9577 7\u301c9; \u89b3\u5bdf\u5024 'bk-header', 'bk-user'\u3002",
                        "example": "bk-header",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "blockId"
                ]
            },
            "GET/admin/block/block-listResponse": {
                "title": "GET /admin/block/block-list response",
                "description": "GET /admin/block/block-list response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "count": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 2147483647,
                        "title": "\u4ef6\u6570",
                        "description": "/admin/block/block-list \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8fd4\u3059\u4ef6\u6570\u3002\u4e00\u89a7\u30fb\u96c6\u8a08\u30fb\u51e6\u7406\u7d50\u679c\u306e\u898f\u6a21\u3092\u8868\u3059\u975e\u8ca0\u6574\u6570\u3002"
                    },
                    "blocks": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u30d6\u30ed\u30c3\u30af\u4e00\u89a7",
                        "description": "/admin/block/block-list \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u30d6\u30ed\u30c3\u30af\u4e00\u89a7\u3002\u914d\u5217\u8981\u7d20\u306fALPS\u610f\u5473\u3068Fake\u89b3\u5bdf\u306b\u57fa\u3065\u304d\u3001\u56fa\u5b9a\u3067\u304d\u306a\u3044\u52d5\u7684\u5217\u306f\u4f8b\u5916\u7406\u7531\u3092\u53f0\u5e33\u5316\u3059\u308b\u3002",
                        "items": {
                            "type": [
                                "object",
                                "null"
                            ],
                            "title": "\u30d6\u30ed\u30c3\u30af",
                            "description": "/admin/block/block-list \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u30d6\u30ed\u30c3\u30af\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `blocks` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002",
                            "properties": {
                                "blockDeletable": {
                                    "type": [
                                        "boolean",
                                        "null"
                                    ],
                                    "title": "\u30d6\u30ed\u30c3\u30af\u524a\u9664\u53ef\u80fd\u30d5\u30e9\u30b0",
                                    "description": "\u3053\u306e\u30d6\u30ed\u30c3\u30af\u3092\u7ba1\u7406\u753b\u9762\u304b\u3089\u524a\u9664\u3067\u304d\u308b\u304b\u3002\u30b7\u30b9\u30c6\u30e0\u6a19\u6e96\u30d6\u30ed\u30c3\u30af\u306f\u524a\u9664\u4e0d\u53ef \u89b3\u5bdf\u5024 'false', 'true'\u3002",
                                    "example": "false"
                                },
                                "blockName": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 32,
                                    "title": "\u30d6\u30ed\u30c3\u30af\u540d",
                                    "description": "\u30d6\u30ed\u30c3\u30af\u306e\u8868\u793a\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 4\u301c8; \u89b3\u5bdf\u5024 '\u30d8\u30c3\u30c0\u30fc', '\u30e6\u30fc\u30b6\u30fc\u30d6\u30ed\u30c3\u30af'\u3002",
                                    "example": "\u30d8\u30c3\u30c0\u30fc"
                                },
                                "blockId": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "title": "\u30d6\u30ed\u30c3\u30afID",
                                    "description": "dtb_block.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e BlockEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f `bk-` \u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9\u4ed8\u304d\u306e\u82f1\u6570\u5b57\u3092\u751f\u6210\u3057\uff08\u30b7\u30fc\u30c9 `bk-header` \u3092\u542b\u3080\uff09\u3001SQL \u5b9f\u88c5\u306f dtb_block.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u975e\u6570\u5024 ID \u306f SqlBlockStorage \u3067\u306f miss \u3068\u3057\u3066\u6271\u308f\u308c getById / put / remove \u306e\u3044\u305a\u308c\u3082 404 \u7d4c\u8def (BlockUpdated / BlockDeleted) \u3092\u8e0f\u3080\u305f\u3081\u3001\u30b7\u30fc\u30c9\u30cf\u30f3\u30c9\u30eb `bk-header` \u3084 `nonexistent-zzz` \u306f Fake / SQL \u53cc\u65b9\u3067 404 \u304c\u540c\u5f62 Fake\u89b3\u5bdf\u6587\u5b57\u9577 7\u301c9; \u89b3\u5bdf\u5024 'bk-header', 'bk-user'\u3002",
                                    "example": "bk-header",
                                    "minLength": 0,
                                    "maxLength": 128,
                                    "pattern": "^[A-Za-z0-9._:@/-]*$",
                                    "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                                },
                                "blockFileName": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 32,
                                    "title": "\u30d6\u30ed\u30c3\u30af\u30d5\u30a1\u30a4\u30eb\u540d",
                                    "description": "\u30d6\u30ed\u30c3\u30af\u306e\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u30d5\u30a1\u30a4\u30eb\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 6\u301c10; \u89b3\u5bdf\u5024 'header', 'user_block'\u3002",
                                    "example": "header"
                                }
                            },
                            "additionalProperties": false,
                            "$comment": "\u914d\u5217\u8981\u7d20\u306fFake/Resource\u3067\u89b3\u5bdf\u3055\u308c\u305f\u65e2\u77e5property\u306b\u56fa\u5b9a\u3059\u308b\u3002\u65b0\u3057\u3044\u5217\u304c\u5fc5\u8981\u306b\u306a\u3063\u305f\u5834\u5408\u306fSemantic-Ex\u89b3\u5bdf\u306b\u8ffd\u52a0\u3057\u3066schema\u3092\u66f4\u65b0\u3059\u308b\u3002"
                        },
                        "minItems": 0
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u4e00\u89a7\u753b\u9762\u304b\u3089\u9001\u4fe1\u3059\u308b\u4f5c\u6210\u30fb\u524a\u9664\u30d5\u30a9\u30fc\u30e0\u7528\u306eCSRF\u30c8\u30fc\u30af\u30f3\u3002",
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]*$"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "count",
                    "blocks",
                    "csrfToken"
                ]
            },
            "POST/admin/block/block-listResponse": {
                "title": "POST /admin/block/block-list response",
                "description": "POST /admin/block/block-list response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "blockDeletable": {
                        "type": [
                            "boolean",
                            "null"
                        ],
                        "title": "\u30d6\u30ed\u30c3\u30af\u524a\u9664\u53ef\u80fd\u30d5\u30e9\u30b0",
                        "description": "\u3053\u306e\u30d6\u30ed\u30c3\u30af\u3092\u7ba1\u7406\u753b\u9762\u304b\u3089\u524a\u9664\u3067\u304d\u308b\u304b\u3002\u30b7\u30b9\u30c6\u30e0\u6a19\u6e96\u30d6\u30ed\u30c3\u30af\u306f\u524a\u9664\u4e0d\u53ef \u89b3\u5bdf\u5024 'false', 'true'\u3002",
                        "example": "false"
                    },
                    "blockName": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u30d6\u30ed\u30c3\u30af\u540d",
                        "description": "\u30d6\u30ed\u30c3\u30af\u306e\u8868\u793a\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 4\u301c8; \u89b3\u5bdf\u5024 '\u30d8\u30c3\u30c0\u30fc', '\u30e6\u30fc\u30b6\u30fc\u30d6\u30ed\u30c3\u30af'\u3002",
                        "example": "\u30d8\u30c3\u30c0\u30fc"
                    },
                    "blockId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u30d6\u30ed\u30c3\u30afID",
                        "description": "dtb_block.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e BlockEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f `bk-` \u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9\u4ed8\u304d\u306e\u82f1\u6570\u5b57\u3092\u751f\u6210\u3057\uff08\u30b7\u30fc\u30c9 `bk-header` \u3092\u542b\u3080\uff09\u3001SQL \u5b9f\u88c5\u306f dtb_block.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u975e\u6570\u5024 ID \u306f SqlBlockStorage \u3067\u306f miss \u3068\u3057\u3066\u6271\u308f\u308c getById / put / remove \u306e\u3044\u305a\u308c\u3082 404 \u7d4c\u8def (BlockUpdated / BlockDeleted) \u3092\u8e0f\u3080\u305f\u3081\u3001\u30b7\u30fc\u30c9\u30cf\u30f3\u30c9\u30eb `bk-header` \u3084 `nonexistent-zzz` \u306f Fake / SQL \u53cc\u65b9\u3067 404 \u304c\u540c\u5f62 Fake\u89b3\u5bdf\u6587\u5b57\u9577 7\u301c9; \u89b3\u5bdf\u5024 'bk-header', 'bk-user'\u3002",
                        "example": "bk-header",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    },
                    "blockFileName": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u30d6\u30ed\u30c3\u30af\u30d5\u30a1\u30a4\u30eb\u540d",
                        "description": "\u30d6\u30ed\u30c3\u30af\u306e\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u30d5\u30a1\u30a4\u30eb\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 6\u301c10; \u89b3\u5bdf\u5024 'header', 'user_block'\u3002",
                        "example": "header"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "blockDeletable",
                    "blockName",
                    "blockId",
                    "blockFileName"
                ]
            },
            "GET/admin/category/categoryResponse": {
                "title": "GET /admin/category/category response",
                "description": "GET /admin/category/category response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "parentId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u89aa\u30ab\u30c6\u30b4\u30eaID",
                        "description": "/admin/category/category \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u5bfe\u8c61\u3092\u8b58\u5225\u3059\u308b\u89aa\u30ab\u30c6\u30b4\u30eaID\u3002DB\u63a1\u756aID\u3001Fake\u6587\u5b57\u5217ID\u3001\u4e92\u63db\u5883\u754cID\u306e\u3069\u308c\u306b\u8a72\u5f53\u3059\u308b\u304b\u3092schema\u306e\u578b\u3068\u30b3\u30e1\u30f3\u30c8\u3067\u5206\u3051\u308b\u3002",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    },
                    "categoryName": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 255,
                        "title": "\u30ab\u30c6\u30b4\u30ea\u540d",
                        "description": "\u30ab\u30c6\u30b4\u30ea\u306e\u8868\u793a\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 4\u301c6; \u89b3\u5bdf\u5024 'Food', 'Drinks'\u3002",
                        "example": "Food"
                    },
                    "sortNo": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 2147483647,
                        "title": "\u8868\u793a\u9806",
                        "description": "\u4e00\u89a7\u306b\u304a\u3051\u308b\u4e26\u3073\u9806 Fake\u89b3\u5bdf\u6570\u5024 1\u301c20; \u89b3\u5bdf\u5024 '1', '3', '2', '4', '10', '20'\u3002",
                        "example": 1
                    },
                    "categoryId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u30ab\u30c6\u30b4\u30eaID",
                        "description": "dtb_category.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e CategoryEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f 32\u6841hex \u3092\u751f\u6210\u3057\u3001SQL \u5b9f\u88c5\u306f dtb_category.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u975e\u6570\u5024 ID \u306f SqlCategoryStorage \u3067\u306f miss \u3068\u3057\u3066\u6271\u308f\u308c getById / put / remove \u306e\u3044\u305a\u308c\u3082 404 \u7d4c\u8def (CategoryUpdated / CategoryDeleted / CategoryCreated \u306e\u89aa\u89e3\u6c7a) \u3092\u8e0f\u3080\u305f\u3081\u3001\u30b7\u30fc\u30c9\u30cf\u30f3\u30c9\u30eb `nonexistent-zzz` \u306f Fake / SQL \u53cc\u65b9\u3067 404 \u304c\u540c\u5f62\u3002parentId\uff08\u81ea\u5df1\u53c2\u7167 FK parent_category_id\uff09\u3082\u540c\u3058\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3067\u8868\u73fe\u3055\u308c\u3001\u975e\u6570\u5024 parentId \u306f SQL \u3067\u306f NULL\uff08\u30eb\u30fc\u30c8\uff09\u306b\u5012\u308c\u308b\u3002blockId / pageId / tagId \u3068\u540c\u3058 Fake\u2194SQL \u4e8c\u91cd\u6027 Fake\u89b3\u5bdf\u6587\u5b57\u9577 8\u301c10; \u89b3\u5bdf\u5024 'cat-food', 'cat-drinks'\u3002",
                        "example": "cat-food",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "csrfToken",
                    "parentId",
                    "categoryName",
                    "sortNo",
                    "categoryId"
                ]
            },
            "PUT/admin/category/categoryResponse": {
                "title": "PUT /admin/category/category response",
                "description": "PUT /admin/category/category response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "parentId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u89aa\u30ab\u30c6\u30b4\u30eaID",
                        "description": "/admin/category/category \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u5bfe\u8c61\u3092\u8b58\u5225\u3059\u308b\u89aa\u30ab\u30c6\u30b4\u30eaID\u3002DB\u63a1\u756aID\u3001Fake\u6587\u5b57\u5217ID\u3001\u4e92\u63db\u5883\u754cID\u306e\u3069\u308c\u306b\u8a72\u5f53\u3059\u308b\u304b\u3092schema\u306e\u578b\u3068\u30b3\u30e1\u30f3\u30c8\u3067\u5206\u3051\u308b\u3002",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    },
                    "categoryName": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u30ab\u30c6\u30b4\u30ea\u540d",
                        "description": "\u30ab\u30c6\u30b4\u30ea\u306e\u8868\u793a\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 4\u301c6; \u89b3\u5bdf\u5024 'Food', 'Drinks'\u3002",
                        "example": "Food"
                    },
                    "sortNo": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 2147483647,
                        "title": "\u8868\u793a\u9806",
                        "description": "\u4e00\u89a7\u306b\u304a\u3051\u308b\u4e26\u3073\u9806 Fake\u89b3\u5bdf\u6570\u5024 1\u301c20; \u89b3\u5bdf\u5024 '1', '3', '2', '4', '10', '20'\u3002",
                        "example": 1
                    },
                    "categoryId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u30ab\u30c6\u30b4\u30eaID",
                        "description": "dtb_category.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e CategoryEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f 32\u6841hex \u3092\u751f\u6210\u3057\u3001SQL \u5b9f\u88c5\u306f dtb_category.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u975e\u6570\u5024 ID \u306f SqlCategoryStorage \u3067\u306f miss \u3068\u3057\u3066\u6271\u308f\u308c getById / put / remove \u306e\u3044\u305a\u308c\u3082 404 \u7d4c\u8def (CategoryUpdated / CategoryDeleted / CategoryCreated \u306e\u89aa\u89e3\u6c7a) \u3092\u8e0f\u3080\u305f\u3081\u3001\u30b7\u30fc\u30c9\u30cf\u30f3\u30c9\u30eb `nonexistent-zzz` \u306f Fake / SQL \u53cc\u65b9\u3067 404 \u304c\u540c\u5f62\u3002parentId\uff08\u81ea\u5df1\u53c2\u7167 FK parent_category_id\uff09\u3082\u540c\u3058\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3067\u8868\u73fe\u3055\u308c\u3001\u975e\u6570\u5024 parentId \u306f SQL \u3067\u306f NULL\uff08\u30eb\u30fc\u30c8\uff09\u306b\u5012\u308c\u308b\u3002blockId / pageId / tagId \u3068\u540c\u3058 Fake\u2194SQL \u4e8c\u91cd\u6027 Fake\u89b3\u5bdf\u6587\u5b57\u9577 8\u301c10; \u89b3\u5bdf\u5024 'cat-food', 'cat-drinks'\u3002",
                        "example": "cat-food",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "parentId",
                    "categoryName",
                    "sortNo",
                    "categoryId"
                ]
            },
            "DELETE/admin/category/categoryResponse": {
                "title": "DELETE /admin/category/category response",
                "description": "DELETE /admin/category/category response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "categoryId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u30ab\u30c6\u30b4\u30eaID",
                        "description": "dtb_category.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e CategoryEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f 32\u6841hex \u3092\u751f\u6210\u3057\u3001SQL \u5b9f\u88c5\u306f dtb_category.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u975e\u6570\u5024 ID \u306f SqlCategoryStorage \u3067\u306f miss \u3068\u3057\u3066\u6271\u308f\u308c getById / put / remove \u306e\u3044\u305a\u308c\u3082 404 \u7d4c\u8def (CategoryUpdated / CategoryDeleted / CategoryCreated \u306e\u89aa\u89e3\u6c7a) \u3092\u8e0f\u3080\u305f\u3081\u3001\u30b7\u30fc\u30c9\u30cf\u30f3\u30c9\u30eb `nonexistent-zzz` \u306f Fake / SQL \u53cc\u65b9\u3067 404 \u304c\u540c\u5f62\u3002parentId\uff08\u81ea\u5df1\u53c2\u7167 FK parent_category_id\uff09\u3082\u540c\u3058\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3067\u8868\u73fe\u3055\u308c\u3001\u975e\u6570\u5024 parentId \u306f SQL \u3067\u306f NULL\uff08\u30eb\u30fc\u30c8\uff09\u306b\u5012\u308c\u308b\u3002blockId / pageId / tagId \u3068\u540c\u3058 Fake\u2194SQL \u4e8c\u91cd\u6027 Fake\u89b3\u5bdf\u6587\u5b57\u9577 8\u301c10; \u89b3\u5bdf\u5024 'cat-food', 'cat-drinks'\u3002",
                        "example": "cat-food",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "categoryId"
                ]
            },
            "GET/admin/category/category-listResponse": {
                "title": "GET /admin/category/category-list response",
                "description": "GET /admin/category/category-list response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "count": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 2147483647,
                        "title": "\u4ef6\u6570",
                        "description": "/admin/category/category-list \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8fd4\u3059\u4ef6\u6570\u3002\u4e00\u89a7\u30fb\u96c6\u8a08\u30fb\u51e6\u7406\u7d50\u679c\u306e\u898f\u6a21\u3092\u8868\u3059\u975e\u8ca0\u6574\u6570\u3002"
                    },
                    "categories": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u30ab\u30c6\u30b4\u30ea\u4e00\u89a7",
                        "description": "/admin/category/category-list \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u30ab\u30c6\u30b4\u30ea\u4e00\u89a7\u3002\u914d\u5217\u8981\u7d20\u306fALPS\u610f\u5473\u3068Fake\u89b3\u5bdf\u306b\u57fa\u3065\u304d\u3001\u56fa\u5b9a\u3067\u304d\u306a\u3044\u52d5\u7684\u5217\u306f\u4f8b\u5916\u7406\u7531\u3092\u53f0\u5e33\u5316\u3059\u308b\u3002",
                        "items": {
                            "type": [
                                "object",
                                "null"
                            ],
                            "title": "\u30ab\u30c6\u30b4\u30ea",
                            "description": "/admin/category/category-list \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u30ab\u30c6\u30b4\u30ea\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `categories` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002",
                            "properties": {
                                "parentId": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "title": "\u89aa\u30ab\u30c6\u30b4\u30eaID",
                                    "description": "/admin/category/category-list \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u5bfe\u8c61\u3092\u8b58\u5225\u3059\u308b\u89aa\u30ab\u30c6\u30b4\u30eaID\u3002DB\u63a1\u756aID\u3001Fake\u6587\u5b57\u5217ID\u3001\u4e92\u63db\u5883\u754cID\u306e\u3069\u308c\u306b\u8a72\u5f53\u3059\u308b\u304b\u3092schema\u306e\u578b\u3068\u30b3\u30e1\u30f3\u30c8\u3067\u5206\u3051\u308b\u3002",
                                    "minLength": 0,
                                    "maxLength": 128,
                                    "pattern": "^[A-Za-z0-9._:@/-]*$",
                                    "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                                },
                                "categoryName": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 255,
                                    "title": "\u30ab\u30c6\u30b4\u30ea\u540d",
                                    "description": "\u30ab\u30c6\u30b4\u30ea\u306e\u8868\u793a\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 4\u301c6; \u89b3\u5bdf\u5024 'Food', 'Drinks'\u3002",
                                    "example": "Food"
                                },
                                "sortNo": {
                                    "type": [
                                        "integer",
                                        "null"
                                    ],
                                    "minimum": 0,
                                    "maximum": 2147483647,
                                    "title": "\u8868\u793a\u9806",
                                    "description": "\u4e00\u89a7\u306b\u304a\u3051\u308b\u4e26\u3073\u9806 Fake\u89b3\u5bdf\u6570\u5024 1\u301c20; \u89b3\u5bdf\u5024 '1', '3', '2', '4', '10', '20'\u3002",
                                    "example": 1
                                },
                                "categoryId": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "title": "\u30ab\u30c6\u30b4\u30eaID",
                                    "description": "dtb_category.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e CategoryEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f 32\u6841hex \u3092\u751f\u6210\u3057\u3001SQL \u5b9f\u88c5\u306f dtb_category.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u975e\u6570\u5024 ID \u306f SqlCategoryStorage \u3067\u306f miss \u3068\u3057\u3066\u6271\u308f\u308c getById / put / remove \u306e\u3044\u305a\u308c\u3082 404 \u7d4c\u8def (CategoryUpdated / CategoryDeleted / CategoryCreated \u306e\u89aa\u89e3\u6c7a) \u3092\u8e0f\u3080\u305f\u3081\u3001\u30b7\u30fc\u30c9\u30cf\u30f3\u30c9\u30eb `nonexistent-zzz` \u306f Fake / SQL \u53cc\u65b9\u3067 404 \u304c\u540c\u5f62\u3002parentId\uff08\u81ea\u5df1\u53c2\u7167 FK parent_category_id\uff09\u3082\u540c\u3058\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3067\u8868\u73fe\u3055\u308c\u3001\u975e\u6570\u5024 parentId \u306f SQL \u3067\u306f NULL\uff08\u30eb\u30fc\u30c8\uff09\u306b\u5012\u308c\u308b\u3002blockId / pageId / tagId \u3068\u540c\u3058 Fake\u2194SQL \u4e8c\u91cd\u6027 Fake\u89b3\u5bdf\u6587\u5b57\u9577 8\u301c10; \u89b3\u5bdf\u5024 'cat-food', 'cat-drinks'\u3002",
                                    "example": "cat-food",
                                    "minLength": 0,
                                    "maxLength": 128,
                                    "pattern": "^[A-Za-z0-9._:@/-]*$",
                                    "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                                }
                            },
                            "additionalProperties": false,
                            "$comment": "\u914d\u5217\u8981\u7d20\u306fFake/Resource\u3067\u89b3\u5bdf\u3055\u308c\u305f\u65e2\u77e5property\u306b\u56fa\u5b9a\u3059\u308b\u3002\u65b0\u3057\u3044\u5217\u304c\u5fc5\u8981\u306b\u306a\u3063\u305f\u5834\u5408\u306fSemantic-Ex\u89b3\u5bdf\u306b\u8ffd\u52a0\u3057\u3066schema\u3092\u66f4\u65b0\u3059\u308b\u3002"
                        },
                        "minItems": 0
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "count",
                    "categories",
                    "csrfToken"
                ]
            },
            "POST/admin/category/category-listResponse": {
                "title": "POST /admin/category/category-list response",
                "description": "POST /admin/category/category-list response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "parentId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u89aa\u30ab\u30c6\u30b4\u30eaID",
                        "description": "/admin/category/category-list \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u5bfe\u8c61\u3092\u8b58\u5225\u3059\u308b\u89aa\u30ab\u30c6\u30b4\u30eaID\u3002DB\u63a1\u756aID\u3001Fake\u6587\u5b57\u5217ID\u3001\u4e92\u63db\u5883\u754cID\u306e\u3069\u308c\u306b\u8a72\u5f53\u3059\u308b\u304b\u3092schema\u306e\u578b\u3068\u30b3\u30e1\u30f3\u30c8\u3067\u5206\u3051\u308b\u3002",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    },
                    "categoryName": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u30ab\u30c6\u30b4\u30ea\u540d",
                        "description": "\u30ab\u30c6\u30b4\u30ea\u306e\u8868\u793a\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 4\u301c6; \u89b3\u5bdf\u5024 'Food', 'Drinks'\u3002",
                        "example": "Food"
                    },
                    "sortNo": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 2147483647,
                        "title": "\u8868\u793a\u9806",
                        "description": "\u4e00\u89a7\u306b\u304a\u3051\u308b\u4e26\u3073\u9806 Fake\u89b3\u5bdf\u6570\u5024 1\u301c20; \u89b3\u5bdf\u5024 '1', '3', '2', '4', '10', '20'\u3002",
                        "example": 1
                    },
                    "categoryId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u30ab\u30c6\u30b4\u30eaID",
                        "description": "dtb_category.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e CategoryEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f 32\u6841hex \u3092\u751f\u6210\u3057\u3001SQL \u5b9f\u88c5\u306f dtb_category.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u975e\u6570\u5024 ID \u306f SqlCategoryStorage \u3067\u306f miss \u3068\u3057\u3066\u6271\u308f\u308c getById / put / remove \u306e\u3044\u305a\u308c\u3082 404 \u7d4c\u8def (CategoryUpdated / CategoryDeleted / CategoryCreated \u306e\u89aa\u89e3\u6c7a) \u3092\u8e0f\u3080\u305f\u3081\u3001\u30b7\u30fc\u30c9\u30cf\u30f3\u30c9\u30eb `nonexistent-zzz` \u306f Fake / SQL \u53cc\u65b9\u3067 404 \u304c\u540c\u5f62\u3002parentId\uff08\u81ea\u5df1\u53c2\u7167 FK parent_category_id\uff09\u3082\u540c\u3058\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3067\u8868\u73fe\u3055\u308c\u3001\u975e\u6570\u5024 parentId \u306f SQL \u3067\u306f NULL\uff08\u30eb\u30fc\u30c8\uff09\u306b\u5012\u308c\u308b\u3002blockId / pageId / tagId \u3068\u540c\u3058 Fake\u2194SQL \u4e8c\u91cd\u6027 Fake\u89b3\u5bdf\u6587\u5b57\u9577 8\u301c10; \u89b3\u5bdf\u5024 'cat-food', 'cat-drinks'\u3002",
                        "example": "cat-food",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "parentId",
                    "categoryName",
                    "sortNo",
                    "categoryId"
                ]
            },
            "GET/admin/category/csvResponse": {
                "title": "GET /admin/category/csv response",
                "description": "GET /admin/category/csv response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "rowCount": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 2147483647,
                        "title": "\u884c\u6570",
                        "description": "/admin/category/csv \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8fd4\u3059\u884c\u6570\u3002\u4e00\u89a7\u30fb\u96c6\u8a08\u30fb\u51e6\u7406\u7d50\u679c\u306e\u898f\u6a21\u3092\u8868\u3059\u975e\u8ca0\u6574\u6570\u3002"
                    },
                    "csv": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 5000000,
                        "$comment": "CSV\u5217\u306e\u696d\u52d9\u59a5\u5f53\u6027\u306fCSV\u4e92\u63db\u30b5\u30fc\u30d3\u30b9\u3067\u691c\u67fb\u3059\u308b\u3002\u3053\u3053\u3067\u306fJSON\u5883\u754c\u4e0a\u306e\u6587\u5b57\u5217\u30b5\u30a4\u30ba\u3092\u5951\u7d04\u3059\u308b\u3002",
                        "title": "\u8f38\u9001\u30da\u30a4\u30ed\u30fc\u30c9",
                        "description": "CSV\u30a4\u30f3\u30dd\u30fc\u30c8/\u30a8\u30af\u30b9\u30dd\u30fc\u30c8\u672c\u6587\u3002\u5217\u69cb\u9020\u306e\u8a73\u7d30\u306fCSV\u4e92\u63db\u30b5\u30fc\u30d3\u30b9\u5883\u754c\u3067\u691c\u67fb\u3059\u308b\u3002"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "csrfToken",
                    "rowCount",
                    "csv"
                ]
            },
            "POST/admin/category/csvResponse": {
                "title": "POST /admin/category/csv response",
                "description": "POST /admin/category/csv response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "deleted": {
                        "type": [
                            "integer",
                            "boolean",
                            "null"
                        ],
                        "title": "\u524a\u9664\u4ef6\u6570",
                        "description": "/admin/category/csv \u306e\u51e6\u7406\u72b6\u614b\u3092\u793a\u3059\u524a\u9664\u4ef6\u6570\u3002\u753b\u9762\u8868\u793a\u3084\u51aa\u7b49\u51e6\u7406\u7d50\u679c\u306e\u5206\u5c90\u306b\u4f7f\u3046\u771f\u507d\u5024\u3002",
                        "minimum": 0
                    },
                    "imported": {
                        "type": [
                            "integer",
                            "boolean",
                            "null"
                        ],
                        "title": "\u53d6\u8fbc\u4ef6\u6570",
                        "description": "/admin/category/csv \u306e\u51e6\u7406\u72b6\u614b\u3092\u793a\u3059\u53d6\u8fbc\u4ef6\u6570\u3002\u753b\u9762\u8868\u793a\u3084\u51aa\u7b49\u51e6\u7406\u7d50\u679c\u306e\u5206\u5c90\u306b\u4f7f\u3046\u771f\u507d\u5024\u3002",
                        "minimum": 0
                    },
                    "message": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "CSV\u30e1\u30c3\u30bb\u30fc\u30b8",
                        "description": "/admin/category/csv \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u51e6\u7406\u7d50\u679c\u30e1\u30c3\u30bb\u30fc\u30b8\u3002\u6ce8\u6587\u6642\u304a\u554f\u3044\u5408\u308f\u305b\u6b04\u3067\u306f\u306a\u304f\u3001\u753b\u9762\u9077\u79fb\u3084\u5b8c\u4e86\u8868\u793a\u306e\u305f\u3081\u306e\u901a\u77e5\u6587\u3002",
                        "example": "\u914d\u9001\u306f\u5e73\u65e5\u5e0c\u671b\u3067\u3059\u3002"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "\u3053\u306e\u30ec\u30b9\u30dd\u30f3\u30b9/\u64cd\u4f5c\u304c\u5bfe\u5fdc\u3059\u308bALPS\u9077\u79fbID\u3002\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u306e\u72b6\u614b\u9077\u79fb\u8ffd\u8de1\u306b\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "accepted": {
                        "type": [
                            "integer",
                            "boolean",
                            "null"
                        ],
                        "title": "\u53d7\u7406\u4ef6\u6570",
                        "description": "/admin/category/csv \u306e\u51e6\u7406\u72b6\u614b\u3092\u793a\u3059\u53d7\u7406\u4ef6\u6570\u3002\u753b\u9762\u8868\u793a\u3084\u51aa\u7b49\u51e6\u7406\u7d50\u679c\u306e\u5206\u5c90\u306b\u4f7f\u3046\u771f\u507d\u5024\u3002",
                        "minimum": 0
                    },
                    "lineCount": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 2147483647,
                        "title": "CSV\u884c\u6570",
                        "description": "/admin/category/csv \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8fd4\u3059CSV\u884c\u6570\u3002\u4e00\u89a7\u30fb\u96c6\u8a08\u30fb\u51e6\u7406\u7d50\u679c\u306e\u898f\u6a21\u3092\u8868\u3059\u975e\u8ca0\u6574\u6570\u3002"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "deleted",
                    "imported",
                    "transitionId",
                    "accepted",
                    "lineCount"
                ]
            },
            "GET/admin/category/editResponse": {
                "title": "GET /admin/category/edit response",
                "description": "GET /admin/category/edit response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "form": {
                        "type": [
                            "object",
                            "array",
                            "null"
                        ],
                        "title": "\u5165\u529b\u30d5\u30a9\u30fc\u30e0",
                        "description": "Aura/WebForm\u7531\u6765\u306e\u30d5\u30a9\u30fc\u30e0\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3002\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5185\u90e8\u69cb\u9020\u306e\u305f\u3081schema\u3067\u306f\u5b58\u5728\u3068\u578b\u306e\u307f\u3092\u5951\u7d04\u3059\u308b\u3002",
                        "$comment": "Aura/WebForm\u7531\u6765\u306e\u4e0d\u900f\u660e\u30d5\u30a9\u30fc\u30e0\u8868\u73fe\u3002Resource\u5883\u754c\u3067\u306f\u30d5\u30a9\u30fc\u30e0\u306e\u5b58\u5728\u3068\u30b3\u30f3\u30c6\u30ad\u30b9\u30c8\u3060\u3051\u3092\u5951\u7d04\u3057\u3001\u5185\u90e8\u69cb\u9020\u306f\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5883\u754c\u306b\u59d4\u306d\u308b\u305f\u3081\u8ffd\u52a0\u30ad\u30fc\u5236\u7d04\u3092\u7f6e\u304b\u306a\u3044\u3002"
                    },
                    "categories": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u30ab\u30c6\u30b4\u30ea\u4e00\u89a7",
                        "description": "/admin/category/edit \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u30ab\u30c6\u30b4\u30ea\u4e00\u89a7\u3002\u914d\u5217\u8981\u7d20\u306fALPS\u610f\u5473\u3068Fake\u89b3\u5bdf\u306b\u57fa\u3065\u304d\u3001\u56fa\u5b9a\u3067\u304d\u306a\u3044\u52d5\u7684\u5217\u306f\u4f8b\u5916\u7406\u7531\u3092\u53f0\u5e33\u5316\u3059\u308b\u3002",
                        "items": {
                            "type": [
                                "object",
                                "null"
                            ],
                            "title": "\u30ab\u30c6\u30b4\u30ea",
                            "description": "/admin/category/edit \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u30ab\u30c6\u30b4\u30ea\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `categories` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002",
                            "properties": {
                                "parentId": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "title": "\u89aa\u30ab\u30c6\u30b4\u30eaID",
                                    "description": "/admin/category/edit \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u5bfe\u8c61\u3092\u8b58\u5225\u3059\u308b\u89aa\u30ab\u30c6\u30b4\u30eaID\u3002DB\u63a1\u756aID\u3001Fake\u6587\u5b57\u5217ID\u3001\u4e92\u63db\u5883\u754cID\u306e\u3069\u308c\u306b\u8a72\u5f53\u3059\u308b\u304b\u3092schema\u306e\u578b\u3068\u30b3\u30e1\u30f3\u30c8\u3067\u5206\u3051\u308b\u3002",
                                    "minLength": 0,
                                    "maxLength": 128,
                                    "pattern": "^[A-Za-z0-9._:@/-]*$",
                                    "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                                },
                                "categoryName": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 255,
                                    "title": "\u30ab\u30c6\u30b4\u30ea\u540d",
                                    "description": "\u30ab\u30c6\u30b4\u30ea\u306e\u8868\u793a\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 4\u301c6; \u89b3\u5bdf\u5024 'Food', 'Drinks'\u3002",
                                    "example": "Food"
                                },
                                "sortNo": {
                                    "type": [
                                        "integer",
                                        "null"
                                    ],
                                    "minimum": 0,
                                    "maximum": 2147483647,
                                    "title": "\u8868\u793a\u9806",
                                    "description": "\u4e00\u89a7\u306b\u304a\u3051\u308b\u4e26\u3073\u9806 Fake\u89b3\u5bdf\u6570\u5024 1\u301c20; \u89b3\u5bdf\u5024 '1', '3', '2', '4', '10', '20'\u3002",
                                    "example": 1
                                },
                                "categoryId": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "title": "\u30ab\u30c6\u30b4\u30eaID",
                                    "description": "dtb_category.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e CategoryEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f 32\u6841hex \u3092\u751f\u6210\u3057\u3001SQL \u5b9f\u88c5\u306f dtb_category.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u975e\u6570\u5024 ID \u306f SqlCategoryStorage \u3067\u306f miss \u3068\u3057\u3066\u6271\u308f\u308c getById / put / remove \u306e\u3044\u305a\u308c\u3082 404 \u7d4c\u8def (CategoryUpdated / CategoryDeleted / CategoryCreated \u306e\u89aa\u89e3\u6c7a) \u3092\u8e0f\u3080\u305f\u3081\u3001\u30b7\u30fc\u30c9\u30cf\u30f3\u30c9\u30eb `nonexistent-zzz` \u306f Fake / SQL \u53cc\u65b9\u3067 404 \u304c\u540c\u5f62\u3002parentId\uff08\u81ea\u5df1\u53c2\u7167 FK parent_category_id\uff09\u3082\u540c\u3058\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3067\u8868\u73fe\u3055\u308c\u3001\u975e\u6570\u5024 parentId \u306f SQL \u3067\u306f NULL\uff08\u30eb\u30fc\u30c8\uff09\u306b\u5012\u308c\u308b\u3002blockId / pageId / tagId \u3068\u540c\u3058 Fake\u2194SQL \u4e8c\u91cd\u6027 Fake\u89b3\u5bdf\u6587\u5b57\u9577 8\u301c10; \u89b3\u5bdf\u5024 'cat-food', 'cat-drinks'\u3002",
                                    "example": "cat-food",
                                    "minLength": 0,
                                    "maxLength": 128,
                                    "pattern": "^[A-Za-z0-9._:@/-]*$",
                                    "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                                }
                            },
                            "additionalProperties": false,
                            "$comment": "\u914d\u5217\u8981\u7d20\u306fFake/Resource\u3067\u89b3\u5bdf\u3055\u308c\u305f\u65e2\u77e5property\u306b\u56fa\u5b9a\u3059\u308b\u3002\u65b0\u3057\u3044\u5217\u304c\u5fc5\u8981\u306b\u306a\u3063\u305f\u5834\u5408\u306fSemantic-Ex\u89b3\u5bdf\u306b\u8ffd\u52a0\u3057\u3066schema\u3092\u66f4\u65b0\u3059\u308b\u3002"
                        },
                        "minItems": 0
                    },
                    "category": {
                        "type": [
                            "array",
                            "null",
                            "object"
                        ],
                        "title": "\u30ab\u30c6\u30b4\u30ea\u8a73\u7d30",
                        "description": "/admin/category/edit \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u30ab\u30c6\u30b4\u30ea\u8a73\u7d30\u3002\u914d\u5217\u8981\u7d20\u306fALPS\u610f\u5473\u3068Fake\u89b3\u5bdf\u306b\u57fa\u3065\u304d\u3001\u56fa\u5b9a\u3067\u304d\u306a\u3044\u52d5\u7684\u5217\u306f\u4f8b\u5916\u7406\u7531\u3092\u53f0\u5e33\u5316\u3059\u308b\u3002",
                        "items": {
                            "type": "string",
                            "title": "\u30ab\u30c6\u30b4\u30ea",
                            "minLength": 0,
                            "maxLength": 255,
                            "description": "/admin/category/edit \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u30ab\u30c6\u30b4\u30ea\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `category` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002"
                        },
                        "minItems": 0,
                        "$comment": "\u5358\u4e00\u8a73\u7d30\u753b\u9762\u3067\u306f\u672a\u9078\u629e/\u521d\u671f\u8868\u793a\u306b\u7a7a\u914d\u5217\u3001\u53d6\u5f97\u6e08\u307f\u72b6\u614b\u306bobject\u304c\u73fe\u308c\u308b\u3002\u4e0d\u900f\u660e\u306a\u8a73\u7d30\u69cb\u9020\u306f\u65e2\u77e5property\u3092\u512a\u5148\u3057\u3001\u8ffd\u52a0\u30ad\u30fc\u306f\u4e92\u63db\u5883\u754c\u3068\u3057\u3066\u8a31\u5bb9\u3059\u308b\u3002"
                    },
                    "count": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 2147483647,
                        "title": "\u4ef6\u6570",
                        "description": "/admin/category/edit \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8fd4\u3059\u4ef6\u6570\u3002\u4e00\u89a7\u30fb\u96c6\u8a08\u30fb\u51e6\u7406\u7d50\u679c\u306e\u898f\u6a21\u3092\u8868\u3059\u975e\u8ca0\u6574\u6570\u3002"
                    },
                    "categoryId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u30ab\u30c6\u30b4\u30eaID",
                        "description": "dtb_category.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e CategoryEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f 32\u6841hex \u3092\u751f\u6210\u3057\u3001SQL \u5b9f\u88c5\u306f dtb_category.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u975e\u6570\u5024 ID \u306f SqlCategoryStorage \u3067\u306f miss \u3068\u3057\u3066\u6271\u308f\u308c getById / put / remove \u306e\u3044\u305a\u308c\u3082 404 \u7d4c\u8def (CategoryUpdated / CategoryDeleted / CategoryCreated \u306e\u89aa\u89e3\u6c7a) \u3092\u8e0f\u3080\u305f\u3081\u3001\u30b7\u30fc\u30c9\u30cf\u30f3\u30c9\u30eb `nonexistent-zzz` \u306f Fake / SQL \u53cc\u65b9\u3067 404 \u304c\u540c\u5f62\u3002parentId\uff08\u81ea\u5df1\u53c2\u7167 FK parent_category_id\uff09\u3082\u540c\u3058\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3067\u8868\u73fe\u3055\u308c\u3001\u975e\u6570\u5024 parentId \u306f SQL \u3067\u306f NULL\uff08\u30eb\u30fc\u30c8\uff09\u306b\u5012\u308c\u308b\u3002blockId / pageId / tagId \u3068\u540c\u3058 Fake\u2194SQL \u4e8c\u91cd\u6027 Fake\u89b3\u5bdf\u6587\u5b57\u9577 8\u301c10; \u89b3\u5bdf\u5024 'cat-food', 'cat-drinks'\u3002",
                        "example": "cat-food",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "csrfToken",
                    "categories",
                    "count",
                    "categoryId"
                ]
            },
            "PUT/admin/class-category/class-categoryResponse": {
                "title": "PUT /admin/class-category/class-category response",
                "description": "PUT /admin/class-category/class-category response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "classCategoryId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u898f\u683c\u5206\u985eID",
                        "description": "dtb_class_category.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e ClassCategoryEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f 32\u6841hex \u3092\u751f\u6210\u3057\u3001SQL \u5b9f\u88c5\u306f dtb_class_category.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u975e\u6570\u5024 ID \u306f SqlClassCategoryStorage \u3067\u306f miss \u3068\u3057\u3066\u6271\u308f\u308c getById / put / remove \u306e\u3044\u305a\u308c\u3082 404 \u7d4c\u8def\uff08\u898f\u683c\u5206\u985e\u306e\u66f4\u65b0\u30fb\u524a\u9664 Final\uff09\u3092\u8e0f\u3080\u305f\u3081\u3001\u30b7\u30fc\u30c9\u30cf\u30f3\u30c9\u30eb `nonexistent-zzz` \u306f Fake / SQL \u53cc\u65b9\u3067 404 \u304c\u540c\u5f62\u3002classNameId / categoryId / blockId / tagId \u3068\u540c\u3058 Fake\u2194SQL \u4e8c\u91cd\u6027 Fake\u89b3\u5bdf\u6587\u5b57\u9577 6\u301c8; \u89b3\u5bdf\u5024 'cc-red', 'cc-blue', 'cc-small'\u3002",
                        "example": "cc-red",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    },
                    "name": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u51e6\u7406\u8868\u793a\u540d",
                        "description": "Fake\u89b3\u5bdf\u6587\u5b57\u9577 1\u301c7; \u89b3\u5bdf\u5024 '\u30c6\u30b9\u30c8\u7ba1\u7406\u8005', '\u526f\u7ba1\u7406\u8005', '\u5e97\u8217\u30aa\u30fc\u30ca\u30fc', '\u524a\u9664\u6e08\u307f\u7ba1\u7406\u8005', 'Red', 'Blue', 'S', 'Color'\u3002",
                        "example": "\u30c6\u30b9\u30c8\u7ba1\u7406\u8005"
                    },
                    "classNameId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u898f\u683c\u540dID",
                        "description": "dtb_class_name.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e ClassNameEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f 32\u6841hex \u3092\u751f\u6210\u3057\u3001SQL \u5b9f\u88c5\u306f dtb_class_name.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u975e\u6570\u5024 ID \u306f SqlClassNameStorage \u3067\u306f miss \u3068\u3057\u3066\u6271\u308f\u308c getById / put / remove \u306e\u3044\u305a\u308c\u3082 404 \u7d4c\u8def\uff08\u898f\u683c\u540d\u306e\u66f4\u65b0\u30fb\u524a\u9664 Final\uff09\u3092\u8e0f\u3080\u305f\u3081\u3001\u30b7\u30fc\u30c9\u30cf\u30f3\u30c9\u30eb `nonexistent-zzz` \u306f Fake / SQL \u53cc\u65b9\u3067 404 \u304c\u540c\u5f62\u3002categoryId / blockId / tagId \u3068\u540c\u3058 Fake\u2194SQL \u4e8c\u91cd\u6027 Fake\u89b3\u5bdf\u6587\u5b57\u9577 7\u301c8; \u89b3\u5bdf\u5024 'cn-color', 'cn-size'\u3002",
                        "example": "cn-color",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "classCategoryId",
                    "name",
                    "classNameId"
                ]
            },
            "DELETE/admin/class-category/class-categoryResponse": {
                "title": "DELETE /admin/class-category/class-category response",
                "description": "DELETE /admin/class-category/class-category response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "classCategoryId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u898f\u683c\u5206\u985eID",
                        "description": "dtb_class_category.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e ClassCategoryEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f 32\u6841hex \u3092\u751f\u6210\u3057\u3001SQL \u5b9f\u88c5\u306f dtb_class_category.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u975e\u6570\u5024 ID \u306f SqlClassCategoryStorage \u3067\u306f miss \u3068\u3057\u3066\u6271\u308f\u308c getById / put / remove \u306e\u3044\u305a\u308c\u3082 404 \u7d4c\u8def\uff08\u898f\u683c\u5206\u985e\u306e\u66f4\u65b0\u30fb\u524a\u9664 Final\uff09\u3092\u8e0f\u3080\u305f\u3081\u3001\u30b7\u30fc\u30c9\u30cf\u30f3\u30c9\u30eb `nonexistent-zzz` \u306f Fake / SQL \u53cc\u65b9\u3067 404 \u304c\u540c\u5f62\u3002classNameId / categoryId / blockId / tagId \u3068\u540c\u3058 Fake\u2194SQL \u4e8c\u91cd\u6027 Fake\u89b3\u5bdf\u6587\u5b57\u9577 6\u301c8; \u89b3\u5bdf\u5024 'cc-red', 'cc-blue', 'cc-small'\u3002",
                        "example": "cc-red",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "classCategoryId"
                ]
            },
            "GET/admin/class-category/class-category-exportResponse": {
                "title": "GET /admin/class-category/class-category-export response",
                "description": "GET /admin/class-category/class-category-export response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "content": {
                        "type": "string",
                        "minLength": 0,
                        "maxLength": 5000000,
                        "title": "CSV\u30a8\u30af\u30b9\u30dd\u30fc\u30c8\u672c\u6587",
                        "description": "/admin/class-category/class-category-export \u304c\u8fd4\u3059CSV\u672c\u6587\u3002\u5217\u610f\u5473\u306fCSV\u4e92\u63db\u30b5\u30fc\u30d3\u30b9\u5074\u3001JSON\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u3068\u3057\u3066\u5951\u7d04\u3059\u308b\u3002",
                        "$comment": "CSV\u5217\u306e\u610f\u5473\u691c\u67fb\u306fCSV\u4e92\u63db\u30b5\u30fc\u30d3\u30b9\u3067\u6271\u3044\u3001\u3053\u3053\u3067\u306f\u30ec\u30b9\u30dd\u30f3\u30b9\u672c\u6587\u3068\u3057\u3066\u306e\u6587\u5b57\u5217\u30b5\u30a4\u30ba\u3092\u691c\u67fb\u3059\u308b\u3002"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "content",
                    "csrfToken"
                ]
            },
            "GET/admin/class-category/class-category-listResponse": {
                "title": "GET /admin/class-category/class-category-list response",
                "description": "GET /admin/class-category/class-category-list response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "form": {
                        "type": [
                            "object",
                            "array",
                            "null"
                        ],
                        "title": "\u5165\u529b\u30d5\u30a9\u30fc\u30e0",
                        "description": "Aura/WebForm\u7531\u6765\u306e\u30d5\u30a9\u30fc\u30e0\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3002\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5185\u90e8\u69cb\u9020\u306e\u305f\u3081schema\u3067\u306f\u5b58\u5728\u3068\u578b\u306e\u307f\u3092\u5951\u7d04\u3059\u308b\u3002",
                        "$comment": "Aura/WebForm\u7531\u6765\u306e\u4e0d\u900f\u660e\u30d5\u30a9\u30fc\u30e0\u8868\u73fe\u3002Resource\u5883\u754c\u3067\u306f\u30d5\u30a9\u30fc\u30e0\u306e\u5b58\u5728\u3068\u30b3\u30f3\u30c6\u30ad\u30b9\u30c8\u3060\u3051\u3092\u5951\u7d04\u3057\u3001\u5185\u90e8\u69cb\u9020\u306f\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5883\u754c\u306b\u59d4\u306d\u308b\u305f\u3081\u8ffd\u52a0\u30ad\u30fc\u5236\u7d04\u3092\u7f6e\u304b\u306a\u3044\u3002"
                    },
                    "classNameId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u898f\u683c\u540dID",
                        "description": "dtb_class_name.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e ClassNameEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f 32\u6841hex \u3092\u751f\u6210\u3057\u3001SQL \u5b9f\u88c5\u306f dtb_class_name.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u975e\u6570\u5024 ID \u306f SqlClassNameStorage \u3067\u306f miss \u3068\u3057\u3066\u6271\u308f\u308c getById / put / remove \u306e\u3044\u305a\u308c\u3082 404 \u7d4c\u8def\uff08\u898f\u683c\u540d\u306e\u66f4\u65b0\u30fb\u524a\u9664 Final\uff09\u3092\u8e0f\u3080\u305f\u3081\u3001\u30b7\u30fc\u30c9\u30cf\u30f3\u30c9\u30eb `nonexistent-zzz` \u306f Fake / SQL \u53cc\u65b9\u3067 404 \u304c\u540c\u5f62\u3002categoryId / blockId / tagId \u3068\u540c\u3058 Fake\u2194SQL \u4e8c\u91cd\u6027 Fake\u89b3\u5bdf\u6587\u5b57\u9577 7\u301c8; \u89b3\u5bdf\u5024 'cn-color', 'cn-size'\u3002",
                        "example": "cn-color",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    },
                    "count": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 2147483647,
                        "title": "\u4ef6\u6570",
                        "description": "/admin/class-category/class-category-list \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8fd4\u3059\u4ef6\u6570\u3002\u4e00\u89a7\u30fb\u96c6\u8a08\u30fb\u51e6\u7406\u7d50\u679c\u306e\u898f\u6a21\u3092\u8868\u3059\u975e\u8ca0\u6574\u6570\u3002"
                    },
                    "classCategories": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u898f\u683c\u5206\u985e\u4e00\u89a7",
                        "description": "/admin/class-category/class-category-list \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u898f\u683c\u5206\u985e\u4e00\u89a7\u3002ALPS\u3001Fake\u89b3\u5bdf\u3001Resource\u5883\u754c\u306e\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305f\u696d\u52d9\u5951\u7d04\u3002",
                        "items": {
                            "type": [
                                "object",
                                "null"
                            ],
                            "title": "\u898f\u683c\u5206\u985e",
                            "description": "/admin/class-category/class-category-list \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u898f\u683c\u5206\u985e\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `classCategories` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002",
                            "properties": {
                                "classCategoryId": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "title": "\u898f\u683c\u5206\u985eID",
                                    "description": "dtb_class_category.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e ClassCategoryEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f 32\u6841hex \u3092\u751f\u6210\u3057\u3001SQL \u5b9f\u88c5\u306f dtb_class_category.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u975e\u6570\u5024 ID \u306f SqlClassCategoryStorage \u3067\u306f miss \u3068\u3057\u3066\u6271\u308f\u308c getById / put / remove \u306e\u3044\u305a\u308c\u3082 404 \u7d4c\u8def\uff08\u898f\u683c\u5206\u985e\u306e\u66f4\u65b0\u30fb\u524a\u9664 Final\uff09\u3092\u8e0f\u3080\u305f\u3081\u3001\u30b7\u30fc\u30c9\u30cf\u30f3\u30c9\u30eb `nonexistent-zzz` \u306f Fake / SQL \u53cc\u65b9\u3067 404 \u304c\u540c\u5f62\u3002classNameId / categoryId / blockId / tagId \u3068\u540c\u3058 Fake\u2194SQL \u4e8c\u91cd\u6027 Fake\u89b3\u5bdf\u6587\u5b57\u9577 6\u301c8; \u89b3\u5bdf\u5024 'cc-red', 'cc-blue', 'cc-small'\u3002",
                                    "example": "cc-red",
                                    "minLength": 0,
                                    "maxLength": 128,
                                    "pattern": "^[A-Za-z0-9._:@/-]*$",
                                    "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                                },
                                "name": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 32,
                                    "title": "\u51e6\u7406\u8868\u793a\u540d",
                                    "description": "Fake\u89b3\u5bdf\u6587\u5b57\u9577 1\u301c7; \u89b3\u5bdf\u5024 '\u30c6\u30b9\u30c8\u7ba1\u7406\u8005', '\u526f\u7ba1\u7406\u8005', '\u5e97\u8217\u30aa\u30fc\u30ca\u30fc', '\u524a\u9664\u6e08\u307f\u7ba1\u7406\u8005', 'Red', 'Blue', 'S', 'Color'\u3002",
                                    "example": "\u30c6\u30b9\u30c8\u7ba1\u7406\u8005"
                                },
                                "classNameId": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "title": "\u898f\u683c\u540dID",
                                    "description": "dtb_class_name.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e ClassNameEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f 32\u6841hex \u3092\u751f\u6210\u3057\u3001SQL \u5b9f\u88c5\u306f dtb_class_name.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u975e\u6570\u5024 ID \u306f SqlClassNameStorage \u3067\u306f miss \u3068\u3057\u3066\u6271\u308f\u308c getById / put / remove \u306e\u3044\u305a\u308c\u3082 404 \u7d4c\u8def\uff08\u898f\u683c\u540d\u306e\u66f4\u65b0\u30fb\u524a\u9664 Final\uff09\u3092\u8e0f\u3080\u305f\u3081\u3001\u30b7\u30fc\u30c9\u30cf\u30f3\u30c9\u30eb `nonexistent-zzz` \u306f Fake / SQL \u53cc\u65b9\u3067 404 \u304c\u540c\u5f62\u3002categoryId / blockId / tagId \u3068\u540c\u3058 Fake\u2194SQL \u4e8c\u91cd\u6027 Fake\u89b3\u5bdf\u6587\u5b57\u9577 7\u301c8; \u89b3\u5bdf\u5024 'cn-color', 'cn-size'\u3002",
                                    "example": "cn-color",
                                    "minLength": 0,
                                    "maxLength": 128,
                                    "pattern": "^[A-Za-z0-9._:@/-]*$",
                                    "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                                }
                            },
                            "additionalProperties": false,
                            "$comment": "\u914d\u5217\u8981\u7d20\u306fFake/Resource\u3067\u89b3\u5bdf\u3055\u308c\u305f\u65e2\u77e5property\u306b\u56fa\u5b9a\u3059\u308b\u3002\u65b0\u3057\u3044\u5217\u304c\u5fc5\u8981\u306b\u306a\u3063\u305f\u5834\u5408\u306fSemantic-Ex\u89b3\u5bdf\u306b\u8ffd\u52a0\u3057\u3066schema\u3092\u66f4\u65b0\u3059\u308b\u3002"
                        },
                        "minItems": 0
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "classNameId",
                    "count",
                    "classCategories"
                ]
            },
            "POST/admin/class-category/class-category-listResponse": {
                "title": "POST /admin/class-category/class-category-list response",
                "description": "POST /admin/class-category/class-category-list response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "classCategoryId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u898f\u683c\u5206\u985eID",
                        "description": "dtb_class_category.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e ClassCategoryEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f 32\u6841hex \u3092\u751f\u6210\u3057\u3001SQL \u5b9f\u88c5\u306f dtb_class_category.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u975e\u6570\u5024 ID \u306f SqlClassCategoryStorage \u3067\u306f miss \u3068\u3057\u3066\u6271\u308f\u308c getById / put / remove \u306e\u3044\u305a\u308c\u3082 404 \u7d4c\u8def\uff08\u898f\u683c\u5206\u985e\u306e\u66f4\u65b0\u30fb\u524a\u9664 Final\uff09\u3092\u8e0f\u3080\u305f\u3081\u3001\u30b7\u30fc\u30c9\u30cf\u30f3\u30c9\u30eb `nonexistent-zzz` \u306f Fake / SQL \u53cc\u65b9\u3067 404 \u304c\u540c\u5f62\u3002classNameId / categoryId / blockId / tagId \u3068\u540c\u3058 Fake\u2194SQL \u4e8c\u91cd\u6027 Fake\u89b3\u5bdf\u6587\u5b57\u9577 6\u301c8; \u89b3\u5bdf\u5024 'cc-red', 'cc-blue', 'cc-small'\u3002",
                        "example": "cc-red",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    },
                    "name": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u51e6\u7406\u8868\u793a\u540d",
                        "description": "Fake\u89b3\u5bdf\u6587\u5b57\u9577 1\u301c7; \u89b3\u5bdf\u5024 '\u30c6\u30b9\u30c8\u7ba1\u7406\u8005', '\u526f\u7ba1\u7406\u8005', '\u5e97\u8217\u30aa\u30fc\u30ca\u30fc', '\u524a\u9664\u6e08\u307f\u7ba1\u7406\u8005', 'Red', 'Blue', 'S', 'Color'\u3002",
                        "example": "\u30c6\u30b9\u30c8\u7ba1\u7406\u8005"
                    },
                    "classNameId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u898f\u683c\u540dID",
                        "description": "dtb_class_name.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e ClassNameEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f 32\u6841hex \u3092\u751f\u6210\u3057\u3001SQL \u5b9f\u88c5\u306f dtb_class_name.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u975e\u6570\u5024 ID \u306f SqlClassNameStorage \u3067\u306f miss \u3068\u3057\u3066\u6271\u308f\u308c getById / put / remove \u306e\u3044\u305a\u308c\u3082 404 \u7d4c\u8def\uff08\u898f\u683c\u540d\u306e\u66f4\u65b0\u30fb\u524a\u9664 Final\uff09\u3092\u8e0f\u3080\u305f\u3081\u3001\u30b7\u30fc\u30c9\u30cf\u30f3\u30c9\u30eb `nonexistent-zzz` \u306f Fake / SQL \u53cc\u65b9\u3067 404 \u304c\u540c\u5f62\u3002categoryId / blockId / tagId \u3068\u540c\u3058 Fake\u2194SQL \u4e8c\u91cd\u6027 Fake\u89b3\u5bdf\u6587\u5b57\u9577 7\u301c8; \u89b3\u5bdf\u5024 'cn-color', 'cn-size'\u3002",
                        "example": "cn-color",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "classCategoryId",
                    "name",
                    "classNameId"
                ]
            },
            "PUT/admin/class-name/class-nameResponse": {
                "title": "PUT /admin/class-name/class-name response",
                "description": "PUT /admin/class-name/class-name response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "name": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u51e6\u7406\u8868\u793a\u540d",
                        "description": "Fake\u89b3\u5bdf\u6587\u5b57\u9577 1\u301c7; \u89b3\u5bdf\u5024 '\u30c6\u30b9\u30c8\u7ba1\u7406\u8005', '\u526f\u7ba1\u7406\u8005', '\u5e97\u8217\u30aa\u30fc\u30ca\u30fc', '\u524a\u9664\u6e08\u307f\u7ba1\u7406\u8005', 'Red', 'Blue', 'S', 'Color'\u3002",
                        "example": "\u30c6\u30b9\u30c8\u7ba1\u7406\u8005"
                    },
                    "classNameId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u898f\u683c\u540dID",
                        "description": "dtb_class_name.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e ClassNameEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f 32\u6841hex \u3092\u751f\u6210\u3057\u3001SQL \u5b9f\u88c5\u306f dtb_class_name.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u975e\u6570\u5024 ID \u306f SqlClassNameStorage \u3067\u306f miss \u3068\u3057\u3066\u6271\u308f\u308c getById / put / remove \u306e\u3044\u305a\u308c\u3082 404 \u7d4c\u8def\uff08\u898f\u683c\u540d\u306e\u66f4\u65b0\u30fb\u524a\u9664 Final\uff09\u3092\u8e0f\u3080\u305f\u3081\u3001\u30b7\u30fc\u30c9\u30cf\u30f3\u30c9\u30eb `nonexistent-zzz` \u306f Fake / SQL \u53cc\u65b9\u3067 404 \u304c\u540c\u5f62\u3002categoryId / blockId / tagId \u3068\u540c\u3058 Fake\u2194SQL \u4e8c\u91cd\u6027 Fake\u89b3\u5bdf\u6587\u5b57\u9577 7\u301c8; \u89b3\u5bdf\u5024 'cn-color', 'cn-size'\u3002",
                        "example": "cn-color",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "name",
                    "classNameId"
                ]
            },
            "DELETE/admin/class-name/class-nameResponse": {
                "title": "DELETE /admin/class-name/class-name response",
                "description": "DELETE /admin/class-name/class-name response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "classNameId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u898f\u683c\u540dID",
                        "description": "dtb_class_name.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e ClassNameEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f 32\u6841hex \u3092\u751f\u6210\u3057\u3001SQL \u5b9f\u88c5\u306f dtb_class_name.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u975e\u6570\u5024 ID \u306f SqlClassNameStorage \u3067\u306f miss \u3068\u3057\u3066\u6271\u308f\u308c getById / put / remove \u306e\u3044\u305a\u308c\u3082 404 \u7d4c\u8def\uff08\u898f\u683c\u540d\u306e\u66f4\u65b0\u30fb\u524a\u9664 Final\uff09\u3092\u8e0f\u3080\u305f\u3081\u3001\u30b7\u30fc\u30c9\u30cf\u30f3\u30c9\u30eb `nonexistent-zzz` \u306f Fake / SQL \u53cc\u65b9\u3067 404 \u304c\u540c\u5f62\u3002categoryId / blockId / tagId \u3068\u540c\u3058 Fake\u2194SQL \u4e8c\u91cd\u6027 Fake\u89b3\u5bdf\u6587\u5b57\u9577 7\u301c8; \u89b3\u5bdf\u5024 'cn-color', 'cn-size'\u3002",
                        "example": "cn-color",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "classNameId"
                ]
            },
            "GET/admin/class-name/class-name-exportResponse": {
                "title": "GET /admin/class-name/class-name-export response",
                "description": "GET /admin/class-name/class-name-export response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "content": {
                        "type": "string",
                        "minLength": 0,
                        "maxLength": 5000000,
                        "title": "CSV\u30a8\u30af\u30b9\u30dd\u30fc\u30c8\u672c\u6587",
                        "description": "/admin/class-name/class-name-export \u304c\u8fd4\u3059CSV\u672c\u6587\u3002\u5217\u610f\u5473\u306fCSV\u4e92\u63db\u30b5\u30fc\u30d3\u30b9\u5074\u3001JSON\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u3068\u3057\u3066\u5951\u7d04\u3059\u308b\u3002",
                        "$comment": "CSV\u5217\u306e\u610f\u5473\u691c\u67fb\u306fCSV\u4e92\u63db\u30b5\u30fc\u30d3\u30b9\u3067\u6271\u3044\u3001\u3053\u3053\u3067\u306f\u30ec\u30b9\u30dd\u30f3\u30b9\u672c\u6587\u3068\u3057\u3066\u306e\u6587\u5b57\u5217\u30b5\u30a4\u30ba\u3092\u691c\u67fb\u3059\u308b\u3002"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "content",
                    "csrfToken"
                ]
            },
            "GET/admin/class-name/class-name-listResponse": {
                "title": "GET /admin/class-name/class-name-list response",
                "description": "GET /admin/class-name/class-name-list response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "form": {
                        "type": [
                            "object",
                            "array",
                            "null"
                        ],
                        "title": "\u5165\u529b\u30d5\u30a9\u30fc\u30e0",
                        "description": "Aura/WebForm\u7531\u6765\u306e\u30d5\u30a9\u30fc\u30e0\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3002\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5185\u90e8\u69cb\u9020\u306e\u305f\u3081schema\u3067\u306f\u5b58\u5728\u3068\u578b\u306e\u307f\u3092\u5951\u7d04\u3059\u308b\u3002",
                        "$comment": "Aura/WebForm\u7531\u6765\u306e\u4e0d\u900f\u660e\u30d5\u30a9\u30fc\u30e0\u8868\u73fe\u3002Resource\u5883\u754c\u3067\u306f\u30d5\u30a9\u30fc\u30e0\u306e\u5b58\u5728\u3068\u30b3\u30f3\u30c6\u30ad\u30b9\u30c8\u3060\u3051\u3092\u5951\u7d04\u3057\u3001\u5185\u90e8\u69cb\u9020\u306f\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5883\u754c\u306b\u59d4\u306d\u308b\u305f\u3081\u8ffd\u52a0\u30ad\u30fc\u5236\u7d04\u3092\u7f6e\u304b\u306a\u3044\u3002"
                    },
                    "count": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 2147483647,
                        "title": "\u4ef6\u6570",
                        "description": "/admin/class-name/class-name-list \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8fd4\u3059\u4ef6\u6570\u3002\u4e00\u89a7\u30fb\u96c6\u8a08\u30fb\u51e6\u7406\u7d50\u679c\u306e\u898f\u6a21\u3092\u8868\u3059\u975e\u8ca0\u6574\u6570\u3002"
                    },
                    "classNames": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u898f\u683c\u540d\u4e00\u89a7",
                        "description": "Fake\u89b3\u5bdf\u6570\u5024 0\u301c1\u3002",
                        "items": {
                            "type": [
                                "object",
                                "null"
                            ],
                            "title": "\u898f\u683c\u540d",
                            "description": "/admin/class-name/class-name-list \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u898f\u683c\u540d\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `classNames` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002",
                            "properties": {
                                "name": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 32,
                                    "title": "\u51e6\u7406\u8868\u793a\u540d",
                                    "description": "Fake\u89b3\u5bdf\u6587\u5b57\u9577 1\u301c7; \u89b3\u5bdf\u5024 '\u30c6\u30b9\u30c8\u7ba1\u7406\u8005', '\u526f\u7ba1\u7406\u8005', '\u5e97\u8217\u30aa\u30fc\u30ca\u30fc', '\u524a\u9664\u6e08\u307f\u7ba1\u7406\u8005', 'Red', 'Blue', 'S', 'Color'\u3002",
                                    "example": "\u30c6\u30b9\u30c8\u7ba1\u7406\u8005"
                                },
                                "classNameId": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "title": "\u898f\u683c\u540dID",
                                    "description": "dtb_class_name.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e ClassNameEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f 32\u6841hex \u3092\u751f\u6210\u3057\u3001SQL \u5b9f\u88c5\u306f dtb_class_name.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u975e\u6570\u5024 ID \u306f SqlClassNameStorage \u3067\u306f miss \u3068\u3057\u3066\u6271\u308f\u308c getById / put / remove \u306e\u3044\u305a\u308c\u3082 404 \u7d4c\u8def\uff08\u898f\u683c\u540d\u306e\u66f4\u65b0\u30fb\u524a\u9664 Final\uff09\u3092\u8e0f\u3080\u305f\u3081\u3001\u30b7\u30fc\u30c9\u30cf\u30f3\u30c9\u30eb `nonexistent-zzz` \u306f Fake / SQL \u53cc\u65b9\u3067 404 \u304c\u540c\u5f62\u3002categoryId / blockId / tagId \u3068\u540c\u3058 Fake\u2194SQL \u4e8c\u91cd\u6027 Fake\u89b3\u5bdf\u6587\u5b57\u9577 7\u301c8; \u89b3\u5bdf\u5024 'cn-color', 'cn-size'\u3002",
                                    "example": "cn-color",
                                    "minLength": 0,
                                    "maxLength": 128,
                                    "pattern": "^[A-Za-z0-9._:@/-]*$",
                                    "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                                }
                            },
                            "additionalProperties": false,
                            "$comment": "\u914d\u5217\u8981\u7d20\u306fFake/Resource\u3067\u89b3\u5bdf\u3055\u308c\u305f\u65e2\u77e5property\u306b\u56fa\u5b9a\u3059\u308b\u3002\u65b0\u3057\u3044\u5217\u304c\u5fc5\u8981\u306b\u306a\u3063\u305f\u5834\u5408\u306fSemantic-Ex\u89b3\u5bdf\u306b\u8ffd\u52a0\u3057\u3066schema\u3092\u66f4\u65b0\u3059\u308b\u3002"
                        },
                        "minItems": 0
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "count"
                ]
            },
            "POST/admin/class-name/class-name-listResponse": {
                "title": "POST /admin/class-name/class-name-list response",
                "description": "POST /admin/class-name/class-name-list response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "name": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u51e6\u7406\u8868\u793a\u540d",
                        "description": "Fake\u89b3\u5bdf\u6587\u5b57\u9577 1\u301c7; \u89b3\u5bdf\u5024 '\u30c6\u30b9\u30c8\u7ba1\u7406\u8005', '\u526f\u7ba1\u7406\u8005', '\u5e97\u8217\u30aa\u30fc\u30ca\u30fc', '\u524a\u9664\u6e08\u307f\u7ba1\u7406\u8005', 'Red', 'Blue', 'S', 'Color'\u3002",
                        "example": "\u30c6\u30b9\u30c8\u7ba1\u7406\u8005"
                    },
                    "classNameId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u898f\u683c\u540dID",
                        "description": "dtb_class_name.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e ClassNameEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f 32\u6841hex \u3092\u751f\u6210\u3057\u3001SQL \u5b9f\u88c5\u306f dtb_class_name.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u975e\u6570\u5024 ID \u306f SqlClassNameStorage \u3067\u306f miss \u3068\u3057\u3066\u6271\u308f\u308c getById / put / remove \u306e\u3044\u305a\u308c\u3082 404 \u7d4c\u8def\uff08\u898f\u683c\u540d\u306e\u66f4\u65b0\u30fb\u524a\u9664 Final\uff09\u3092\u8e0f\u3080\u305f\u3081\u3001\u30b7\u30fc\u30c9\u30cf\u30f3\u30c9\u30eb `nonexistent-zzz` \u306f Fake / SQL \u53cc\u65b9\u3067 404 \u304c\u540c\u5f62\u3002categoryId / blockId / tagId \u3068\u540c\u3058 Fake\u2194SQL \u4e8c\u91cd\u6027 Fake\u89b3\u5bdf\u6587\u5b57\u9577 7\u301c8; \u89b3\u5bdf\u5024 'cn-color', 'cn-size'\u3002",
                        "example": "cn-color",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "name",
                    "classNameId"
                ]
            },
            "GET/admin/content/cacheResponse": {
                "title": "GET /admin/content/cache response",
                "description": "GET /admin/content/cache response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "csrfToken": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 160,
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "/admin/content/cache \u306eHTML\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u7528CSRF\u30c8\u30fc\u30af\u30f3\u3002"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape."
            },
            "PUT/admin/content/cacheResponse": {
                "title": "PUT /admin/content/cache response",
                "description": "PUT /admin/content/cache response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "message": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u51e6\u7406\u30e1\u30c3\u30bb\u30fc\u30b8",
                        "description": "/admin/content/cache \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u51e6\u7406\u7d50\u679c\u30e1\u30c3\u30bb\u30fc\u30b8\u3002\u6ce8\u6587\u6642\u304a\u554f\u3044\u5408\u308f\u305b\u6b04\u3067\u306f\u306a\u304f\u3001\u753b\u9762\u9077\u79fb\u3084\u5b8c\u4e86\u8868\u793a\u306e\u305f\u3081\u306e\u901a\u77e5\u6587\u3002",
                        "example": "\u914d\u9001\u306f\u5e73\u65e5\u5e0c\u671b\u3067\u3059\u3002"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "\u3053\u306e\u30ec\u30b9\u30dd\u30f3\u30b9/\u64cd\u4f5c\u304c\u5bfe\u5fdc\u3059\u308bALPS\u9077\u79fbID\u3002\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u306e\u72b6\u614b\u9077\u79fb\u8ffd\u8de1\u306b\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "transitionId"
                ]
            },
            "GET/admin/content/cssResponse": {
                "title": "GET /admin/content/css response",
                "description": "GET /admin/content/css response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "form": {
                        "type": [
                            "object",
                            "array",
                            "null"
                        ],
                        "title": "\u5165\u529b\u30d5\u30a9\u30fc\u30e0",
                        "description": "Aura/WebForm\u7531\u6765\u306e\u30d5\u30a9\u30fc\u30e0\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3002\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5185\u90e8\u69cb\u9020\u306e\u305f\u3081schema\u3067\u306f\u5b58\u5728\u3068\u578b\u306e\u307f\u3092\u5951\u7d04\u3059\u308b\u3002",
                        "$comment": "Aura/WebForm\u7531\u6765\u306e\u4e0d\u900f\u660e\u30d5\u30a9\u30fc\u30e0\u8868\u73fe\u3002Resource\u5883\u754c\u3067\u306f\u30d5\u30a9\u30fc\u30e0\u306e\u5b58\u5728\u3068\u30b3\u30f3\u30c6\u30ad\u30b9\u30c8\u3060\u3051\u3092\u5951\u7d04\u3057\u3001\u5185\u90e8\u69cb\u9020\u306f\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5883\u754c\u306b\u59d4\u306d\u308b\u305f\u3081\u8ffd\u52a0\u30ad\u30fc\u5236\u7d04\u3092\u7f6e\u304b\u306a\u3044\u3002"
                    },
                    "csrfToken": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 160,
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "/admin/content/css \u306eHTML\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u7528CSRF\u30c8\u30fc\u30af\u30f3\u3002"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape."
            },
            "PUT/admin/content/cssResponse": {
                "title": "PUT /admin/content/css response",
                "description": "PUT /admin/content/css response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "length": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 2147483647,
                        "title": "\u672c\u6587\u9577",
                        "description": "/admin/content/css \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8fd4\u3059\u672c\u6587\u9577\u3002\u4e00\u89a7\u3001\u96c6\u8a08\u3001CSV\u51e6\u7406\u7d50\u679c\u306e\u898f\u6a21\u3092\u8868\u3059\u975e\u8ca0\u306e\u6570\u5024\u3002"
                    },
                    "message": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u51e6\u7406\u30e1\u30c3\u30bb\u30fc\u30b8",
                        "description": "/admin/content/css \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u51e6\u7406\u7d50\u679c\u30e1\u30c3\u30bb\u30fc\u30b8\u3002\u6ce8\u6587\u6642\u304a\u554f\u3044\u5408\u308f\u305b\u6b04\u3067\u306f\u306a\u304f\u3001\u753b\u9762\u9077\u79fb\u3084\u5b8c\u4e86\u8868\u793a\u306e\u305f\u3081\u306e\u901a\u77e5\u6587\u3002",
                        "example": "\u914d\u9001\u306f\u5e73\u65e5\u5e0c\u671b\u3067\u3059\u3002"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "\u3053\u306e\u30ec\u30b9\u30dd\u30f3\u30b9/\u64cd\u4f5c\u304c\u5bfe\u5fdc\u3059\u308bALPS\u9077\u79fbID\u3002\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u306e\u72b6\u614b\u9077\u79fb\u8ffd\u8de1\u306b\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "length",
                    "transitionId"
                ]
            },
            "GET/admin/content/file-managerResponse": {
                "title": "GET /admin/content/file-manager response",
                "description": "GET /admin/content/file-manager response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "form": {
                        "type": [
                            "object",
                            "array",
                            "null"
                        ],
                        "title": "\u5165\u529b\u30d5\u30a9\u30fc\u30e0",
                        "description": "Aura/WebForm\u7531\u6765\u306e\u30d5\u30a9\u30fc\u30e0\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3002\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5185\u90e8\u69cb\u9020\u306e\u305f\u3081schema\u3067\u306f\u5b58\u5728\u3068\u578b\u306e\u307f\u3092\u5951\u7d04\u3059\u308b\u3002",
                        "$comment": "Aura/WebForm\u7531\u6765\u306e\u4e0d\u900f\u660e\u30d5\u30a9\u30fc\u30e0\u8868\u73fe\u3002Resource\u5883\u754c\u3067\u306f\u30d5\u30a9\u30fc\u30e0\u306e\u5b58\u5728\u3068\u30b3\u30f3\u30c6\u30ad\u30b9\u30c8\u3060\u3051\u3092\u5951\u7d04\u3057\u3001\u5185\u90e8\u69cb\u9020\u306f\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5883\u754c\u306b\u59d4\u306d\u308b\u305f\u3081\u8ffd\u52a0\u30ad\u30fc\u5236\u7d04\u3092\u7f6e\u304b\u306a\u3044\u3002"
                    },
                    "tplIsTopDir": {
                        "type": [
                            "boolean",
                            "null"
                        ],
                        "title": "\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u30eb\u30fc\u30c8\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u5224\u5b9a",
                        "description": "/admin/content/file-manager \u306e\u51e6\u7406\u72b6\u614b\u3092\u793a\u3059\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u30eb\u30fc\u30c8\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u5224\u5b9a\u3002\u753b\u9762\u8868\u793a\u3084\u51aa\u7b49\u51e6\u7406\u7d50\u679c\u306e\u5206\u5c90\u306b\u4f7f\u3046\u771f\u507d\u5024\u3002"
                    },
                    "arrFileList": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u30d5\u30a1\u30a4\u30eb\u4e00\u89a7",
                        "description": "/admin/content/file-manager \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u30d5\u30a1\u30a4\u30eb\u4e00\u89a7\u3002ALPS\u3001Fake\u89b3\u5bdf\u3001Resource\u5883\u754c\u306e\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305f\u696d\u52d9\u5951\u7d04\u3002",
                        "items": {
                            "type": "string",
                            "title": "\u51e6\u7406\u884c",
                            "minLength": 0,
                            "maxLength": 255,
                            "description": "/admin/content/file-manager \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u51e6\u7406\u884c\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `arrFileList` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002"
                        },
                        "minItems": 0
                    },
                    "errors": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u691c\u8a3c\u30a8\u30e9\u30fc",
                        "description": "/admin/content/file-manager \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u691c\u8a3c\u30a8\u30e9\u30fc\u3002ALPS\u3001Fake\u89b3\u5bdf\u3001Resource\u5883\u754c\u306e\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305f\u696d\u52d9\u5951\u7d04\u3002",
                        "items": {
                            "type": "string",
                            "title": "\u30a8\u30e9\u30fc\u30e1\u30c3\u30bb\u30fc\u30b8",
                            "minLength": 0,
                            "maxLength": 1000,
                            "description": "/admin/content/file-manager \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u51e6\u7406\u884c\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `errors` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002"
                        }
                    },
                    "tplNowDir": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 255,
                        "title": "\u73fe\u5728\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u30c7\u30a3\u30ec\u30af\u30c8\u30ea",
                        "description": "/admin/content/file-manager \u306e\u753b\u9762\u8868\u793a\u306b\u4f7f\u3046\u73fe\u5728\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u3002\u696d\u52d9\u30a8\u30f3\u30c6\u30a3\u30c6\u30a3\u305d\u306e\u3082\u306e\u3067\u306f\u306a\u304f\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8/\u4e00\u89a7\u8868\u793a\u306e\u88dc\u52a9\u5024\u3002"
                    },
                    "tplParentDir": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 255,
                        "title": "\u89aa\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u30c7\u30a3\u30ec\u30af\u30c8\u30ea",
                        "description": "/admin/content/file-manager \u306e\u753b\u9762\u8868\u793a\u306b\u4f7f\u3046\u89aa\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u3002\u696d\u52d9\u30a8\u30f3\u30c6\u30a3\u30c6\u30a3\u305d\u306e\u3082\u306e\u3067\u306f\u306a\u304f\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8/\u4e00\u89a7\u8868\u793a\u306e\u88dc\u52a9\u5024\u3002"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "tplIsTopDir",
                    "tplNowDir",
                    "tplParentDir"
                ]
            },
            "GET/admin/content/jsResponse": {
                "title": "GET /admin/content/js response",
                "description": "GET /admin/content/js response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "form": {
                        "type": [
                            "object",
                            "array",
                            "null"
                        ],
                        "title": "\u5165\u529b\u30d5\u30a9\u30fc\u30e0",
                        "description": "Aura/WebForm\u7531\u6765\u306e\u30d5\u30a9\u30fc\u30e0\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3002\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5185\u90e8\u69cb\u9020\u306e\u305f\u3081schema\u3067\u306f\u5b58\u5728\u3068\u578b\u306e\u307f\u3092\u5951\u7d04\u3059\u308b\u3002",
                        "$comment": "Aura/WebForm\u7531\u6765\u306e\u4e0d\u900f\u660e\u30d5\u30a9\u30fc\u30e0\u8868\u73fe\u3002Resource\u5883\u754c\u3067\u306f\u30d5\u30a9\u30fc\u30e0\u306e\u5b58\u5728\u3068\u30b3\u30f3\u30c6\u30ad\u30b9\u30c8\u3060\u3051\u3092\u5951\u7d04\u3057\u3001\u5185\u90e8\u69cb\u9020\u306f\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5883\u754c\u306b\u59d4\u306d\u308b\u305f\u3081\u8ffd\u52a0\u30ad\u30fc\u5236\u7d04\u3092\u7f6e\u304b\u306a\u3044\u3002"
                    },
                    "csrfToken": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 160,
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "/admin/content/js \u306eHTML\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u7528CSRF\u30c8\u30fc\u30af\u30f3\u3002"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape."
            },
            "PUT/admin/content/jsResponse": {
                "title": "PUT /admin/content/js response",
                "description": "PUT /admin/content/js response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "length": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 2147483647,
                        "title": "\u672c\u6587\u9577",
                        "description": "/admin/content/js \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8fd4\u3059\u672c\u6587\u9577\u3002\u4e00\u89a7\u3001\u96c6\u8a08\u3001CSV\u51e6\u7406\u7d50\u679c\u306e\u898f\u6a21\u3092\u8868\u3059\u975e\u8ca0\u306e\u6570\u5024\u3002"
                    },
                    "message": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u51e6\u7406\u30e1\u30c3\u30bb\u30fc\u30b8",
                        "description": "/admin/content/js \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u51e6\u7406\u7d50\u679c\u30e1\u30c3\u30bb\u30fc\u30b8\u3002\u6ce8\u6587\u6642\u304a\u554f\u3044\u5408\u308f\u305b\u6b04\u3067\u306f\u306a\u304f\u3001\u753b\u9762\u9077\u79fb\u3084\u5b8c\u4e86\u8868\u793a\u306e\u305f\u3081\u306e\u901a\u77e5\u6587\u3002",
                        "example": "\u914d\u9001\u306f\u5e73\u65e5\u5e0c\u671b\u3067\u3059\u3002"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "\u3053\u306e\u30ec\u30b9\u30dd\u30f3\u30b9/\u64cd\u4f5c\u304c\u5bfe\u5fdc\u3059\u308bALPS\u9077\u79fbID\u3002\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u306e\u72b6\u614b\u9077\u79fb\u8ffd\u8de1\u306b\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "length",
                    "transitionId"
                ]
            },
            "GET/admin/content/maintenanceResponse": {
                "title": "GET /admin/content/maintenance response",
                "description": "GET /admin/content/maintenance response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "isMaintenance": {
                        "type": [
                            "boolean",
                            "null"
                        ],
                        "title": "\u30e1\u30f3\u30c6\u30ca\u30f3\u30b9\u4e2d\u30d5\u30e9\u30b0",
                        "description": "/admin/content/maintenance \u306e\u51e6\u7406\u72b6\u614b\u3092\u793a\u3059\u30e1\u30f3\u30c6\u30ca\u30f3\u30b9\u4e2d\u30d5\u30e9\u30b0\u3002\u753b\u9762\u8868\u793a\u3084\u51aa\u7b49\u51e6\u7406\u7d50\u679c\u306e\u5206\u5c90\u306b\u4f7f\u3046\u771f\u507d\u5024\u3002"
                    },
                    "csrfToken": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 160,
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "/admin/content/maintenance \u306eHTML\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u7528CSRF\u30c8\u30fc\u30af\u30f3\u3002"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "isMaintenance"
                ]
            },
            "PUT/admin/content/maintenanceResponse": {
                "title": "PUT /admin/content/maintenance response",
                "description": "PUT /admin/content/maintenance response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "message": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u51e6\u7406\u30e1\u30c3\u30bb\u30fc\u30b8",
                        "description": "/admin/content/maintenance \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u51e6\u7406\u7d50\u679c\u30e1\u30c3\u30bb\u30fc\u30b8\u3002\u6ce8\u6587\u6642\u304a\u554f\u3044\u5408\u308f\u305b\u6b04\u3067\u306f\u306a\u304f\u3001\u753b\u9762\u9077\u79fb\u3084\u5b8c\u4e86\u8868\u793a\u306e\u305f\u3081\u306e\u901a\u77e5\u6587\u3002",
                        "example": "\u914d\u9001\u306f\u5e73\u65e5\u5e0c\u671b\u3067\u3059\u3002"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "\u3053\u306e\u30ec\u30b9\u30dd\u30f3\u30b9/\u64cd\u4f5c\u304c\u5bfe\u5fdc\u3059\u308bALPS\u9077\u79fbID\u3002\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u306e\u72b6\u614b\u9077\u79fb\u8ffd\u8de1\u306b\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "isMaintenance": {
                        "type": [
                            "boolean",
                            "null"
                        ],
                        "title": "\u30e1\u30f3\u30c6\u30ca\u30f3\u30b9\u4e2d\u30d5\u30e9\u30b0",
                        "description": "/admin/content/maintenance \u306e\u51e6\u7406\u72b6\u614b\u3092\u793a\u3059\u30e1\u30f3\u30c6\u30ca\u30f3\u30b9\u4e2d\u30d5\u30e9\u30b0\u3002\u753b\u9762\u8868\u793a\u3084\u51aa\u7b49\u51e6\u7406\u7d50\u679c\u306e\u5206\u5c90\u306b\u4f7f\u3046\u771f\u507d\u5024\u3002"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "transitionId",
                    "isMaintenance"
                ]
            },
            "POST/admin/customer/resend-activation-mailResponse": {
                "title": "POST /admin/customer/resend-activation-mail response",
                "description": "POST /admin/customer/resend-activation-mail response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "message": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u4f1a\u54e1\u30e1\u30c3\u30bb\u30fc\u30b8",
                        "description": "/admin/customer/resend-activation-mail \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u51e6\u7406\u7d50\u679c\u30e1\u30c3\u30bb\u30fc\u30b8\u3002\u6ce8\u6587\u6642\u304a\u554f\u3044\u5408\u308f\u305b\u6b04\u3067\u306f\u306a\u304f\u3001\u753b\u9762\u9077\u79fb\u3084\u5b8c\u4e86\u8868\u793a\u306e\u305f\u3081\u306e\u901a\u77e5\u6587\u3002",
                        "example": "\u914d\u9001\u306f\u5e73\u65e5\u5e0c\u671b\u3067\u3059\u3002"
                    },
                    "customerId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u4f1a\u54e1ID",
                        "description": "dtb_customer.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e Entity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\uff08\u30de\u30b9\u30a2\u30b5\u30a4\u30f3\u30e1\u30f3\u30c8\u9632\u6b62\u306e\u305f\u3081\u3001Session/AuthZ \u7d4c\u7531\u3067\u8aad\u307f\u51fa\u3057\u3001\u30ea\u30af\u30a8\u30b9\u30c8\u672c\u6587\u304b\u3089\u306f\u53d7\u3051\u53d6\u3089\u306a\u3044\uff09\u3002Favorite / Cart / Order \u306e\u6240\u6709\u8005\u30ad\u30fc\u3068\u3057\u3066\u6a2a\u65ad\u4f7f\u7528 Fake\u89b3\u5bdf\u6587\u5b57\u9577 12\u301c32; \u89b3\u5bdf\u5024 'customer-001', '0123456789abcdef0123456789abcdef', 'customer-002', 'favorite-list-customer', 'favorite-html-customer', 'fedcba9876543210fedcba9876543210', 'aaaaaaaa00000000bbbbbbbb11111111', '10000000aaaa1111bbbb2222cccc3333'\u3002",
                        "example": "customer-001",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u3002\u4f1a\u54e1\u767b\u9332\u30fb\u30ed\u30b0\u30a4\u30f3\u30fb\u901a\u77e5\u3067\u5171\u901a\u306b\u4f7f\u3046\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 15\u301c58; \u89b3\u5bdf\u5024 'bob@example.com', 'login-test@example.com', 'alice@example.com', 'carol@example.com', 'provisional@example.com', 'withdrawn-30000000aaaa3333bbbb4444cccc5555@example.invalid'\u3002",
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "customerId",
                    "email"
                ]
            },
            "GET/admin/delivery/deliveryResponse": {
                "title": "GET /admin/delivery/delivery response",
                "description": "GET /admin/delivery/delivery response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "deliveryId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u914d\u9001\u65b9\u6cd5ID",
                        "description": "dtb_delivery.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e DeliveryEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f 32\u6841hex \u3092\u751f\u6210\u3057\u3001SQL \u5b9f\u88c5\u306f dtb_delivery.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u975e\u6570\u5024 ID \u306f SqlDeliveryStorage \u3067\u306f miss \u3068\u3057\u3066\u6271\u308f\u308c getById / put / remove \u306e\u3044\u305a\u308c\u3082 404 \u7d4c\u8def (DeliveryUpdated / DeliveryDeleted) \u3092\u8e0f\u3080\u305f\u3081\u3001\u30b7\u30fc\u30c9\u30cf\u30f3\u30c9\u30eb `nonexistent-zzz` \u306f Fake / SQL \u53cc\u65b9\u3067 404 \u304c\u540c\u5f62\u3002blockId / pageId / categoryId \u3068\u540c\u3058 Fake\u2194SQL \u4e8c\u91cd\u6027 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c10; \u89b3\u5bdf\u5024 'del-yamato', 'del-yupack'\u3002",
                        "example": "del-yamato",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    },
                    "form": {
                        "type": [
                            "object",
                            "array",
                            "null"
                        ],
                        "title": "\u5165\u529b\u30d5\u30a9\u30fc\u30e0",
                        "description": "Aura/WebForm\u7531\u6765\u306e\u30d5\u30a9\u30fc\u30e0\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3002\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5185\u90e8\u69cb\u9020\u306e\u305f\u3081schema\u3067\u306f\u5b58\u5728\u3068\u578b\u306e\u307f\u3092\u5951\u7d04\u3059\u308b\u3002",
                        "$comment": "Aura/WebForm\u7531\u6765\u306e\u4e0d\u900f\u660e\u30d5\u30a9\u30fc\u30e0\u8868\u73fe\u3002Resource\u5883\u754c\u3067\u306f\u30d5\u30a9\u30fc\u30e0\u306e\u5b58\u5728\u3068\u30b3\u30f3\u30c6\u30ad\u30b9\u30c8\u3060\u3051\u3092\u5951\u7d04\u3057\u3001\u5185\u90e8\u69cb\u9020\u306f\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5883\u754c\u306b\u59d4\u306d\u308b\u305f\u3081\u8ffd\u52a0\u30ad\u30fc\u5236\u7d04\u3092\u7f6e\u304b\u306a\u3044\u3002"
                    },
                    "delivery": {
                        "type": [
                            "array",
                            "null",
                            "object"
                        ],
                        "title": "\u914d\u9001\u65b9\u6cd5\u8a73\u7d30",
                        "description": "/admin/delivery/delivery \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u914d\u9001\u65b9\u6cd5\u8a73\u7d30\u3002\u914d\u5217\u8981\u7d20\u306fALPS\u610f\u5473\u3068Fake\u89b3\u5bdf\u306b\u57fa\u3065\u304d\u3001\u56fa\u5b9a\u3067\u304d\u306a\u3044\u52d5\u7684\u5217\u306f\u4f8b\u5916\u7406\u7531\u3092\u53f0\u5e33\u5316\u3059\u308b\u3002",
                        "items": {
                            "type": "string",
                            "title": "\u914d\u9001\u65b9\u6cd5",
                            "minLength": 0,
                            "maxLength": 255,
                            "description": "/admin/delivery/delivery \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u914d\u9001\u65b9\u6cd5\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `delivery` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002"
                        },
                        "minItems": 0,
                        "$comment": "\u5358\u4e00\u8a73\u7d30\u753b\u9762\u3067\u306f\u672a\u9078\u629e/\u521d\u671f\u8868\u793a\u306b\u7a7a\u914d\u5217\u3001\u53d6\u5f97\u6e08\u307f\u72b6\u614b\u306bobject\u304c\u73fe\u308c\u308b\u3002\u4e0d\u900f\u660e\u306a\u8a73\u7d30\u69cb\u9020\u306f\u65e2\u77e5property\u3092\u512a\u5148\u3057\u3001\u8ffd\u52a0\u30ad\u30fc\u306f\u4e92\u63db\u5883\u754c\u3068\u3057\u3066\u8a31\u5bb9\u3059\u308b\u3002"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "csrfToken",
                    "deliveryId"
                ]
            },
            "PUT/admin/delivery/deliveryResponse": {
                "title": "PUT /admin/delivery/delivery response",
                "description": "PUT /admin/delivery/delivery response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "deliveryId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u914d\u9001\u65b9\u6cd5ID",
                        "description": "dtb_delivery.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e DeliveryEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f 32\u6841hex \u3092\u751f\u6210\u3057\u3001SQL \u5b9f\u88c5\u306f dtb_delivery.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u975e\u6570\u5024 ID \u306f SqlDeliveryStorage \u3067\u306f miss \u3068\u3057\u3066\u6271\u308f\u308c getById / put / remove \u306e\u3044\u305a\u308c\u3082 404 \u7d4c\u8def (DeliveryUpdated / DeliveryDeleted) \u3092\u8e0f\u3080\u305f\u3081\u3001\u30b7\u30fc\u30c9\u30cf\u30f3\u30c9\u30eb `nonexistent-zzz` \u306f Fake / SQL \u53cc\u65b9\u3067 404 \u304c\u540c\u5f62\u3002blockId / pageId / categoryId \u3068\u540c\u3058 Fake\u2194SQL \u4e8c\u91cd\u6027 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c10; \u89b3\u5bdf\u5024 'del-yamato', 'del-yupack'\u3002",
                        "example": "del-yamato",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    },
                    "deliveryName": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 255,
                        "title": "\u914d\u9001\u65b9\u6cd5\u540d",
                        "description": "\u7ba1\u7406\u753b\u9762\u3067\u767b\u9332\u30fb\u66f4\u65b0\u3059\u308b\u914d\u9001\u65b9\u6cd5\u306e\u8868\u793a\u540d\u3002\u5b9f\u904b\u7528\u3067\u306f\u5e97\u8217\u72ec\u81ea\u306e\u9577\u3044\u540d\u79f0\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "example": "\u30e4\u30de\u30c8\u5b85\u6025\u4fbf"
                    },
                    "visible": {
                        "type": [
                            "boolean",
                            "null"
                        ],
                        "title": "\u51e6\u7406\u72b6\u614b\u30d5\u30e9\u30b0",
                        "description": "\u89b3\u5bdf\u5024 'true'\u3002",
                        "example": "true"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "deliveryId",
                    "deliveryName",
                    "visible"
                ]
            },
            "DELETE/admin/delivery/deliveryResponse": {
                "title": "DELETE /admin/delivery/delivery response",
                "description": "DELETE /admin/delivery/delivery response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "deliveryId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u914d\u9001\u65b9\u6cd5ID",
                        "description": "dtb_delivery.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e DeliveryEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f 32\u6841hex \u3092\u751f\u6210\u3057\u3001SQL \u5b9f\u88c5\u306f dtb_delivery.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u975e\u6570\u5024 ID \u306f SqlDeliveryStorage \u3067\u306f miss \u3068\u3057\u3066\u6271\u308f\u308c getById / put / remove \u306e\u3044\u305a\u308c\u3082 404 \u7d4c\u8def (DeliveryUpdated / DeliveryDeleted) \u3092\u8e0f\u3080\u305f\u3081\u3001\u30b7\u30fc\u30c9\u30cf\u30f3\u30c9\u30eb `nonexistent-zzz` \u306f Fake / SQL \u53cc\u65b9\u3067 404 \u304c\u540c\u5f62\u3002blockId / pageId / categoryId \u3068\u540c\u3058 Fake\u2194SQL \u4e8c\u91cd\u6027 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c10; \u89b3\u5bdf\u5024 'del-yamato', 'del-yupack'\u3002",
                        "example": "del-yamato",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "deliveryId"
                ]
            },
            "GET/admin/delivery/delivery-listResponse": {
                "title": "GET /admin/delivery/delivery-list response",
                "description": "GET /admin/delivery/delivery-list response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "deliveries": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u914d\u9001\u65b9\u6cd5\u4e00\u89a7",
                        "description": "/admin/delivery/delivery-list \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u914d\u9001\u65b9\u6cd5\u4e00\u89a7\u3002\u914d\u5217\u8981\u7d20\u306fALPS\u610f\u5473\u3068Fake\u89b3\u5bdf\u306b\u57fa\u3065\u304d\u3001\u56fa\u5b9a\u3067\u304d\u306a\u3044\u52d5\u7684\u5217\u306f\u4f8b\u5916\u7406\u7531\u3092\u53f0\u5e33\u5316\u3059\u308b\u3002",
                        "items": {
                            "type": [
                                "object",
                                "null"
                            ],
                            "title": "\u914d\u9001\u65b9\u6cd5",
                            "description": "/admin/delivery/delivery-list \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u914d\u9001\u65b9\u6cd5\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `deliveries` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002",
                            "properties": {
                                "deliveryId": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "title": "\u914d\u9001\u65b9\u6cd5ID",
                                    "description": "dtb_delivery.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e DeliveryEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f 32\u6841hex \u3092\u751f\u6210\u3057\u3001SQL \u5b9f\u88c5\u306f dtb_delivery.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u975e\u6570\u5024 ID \u306f SqlDeliveryStorage \u3067\u306f miss \u3068\u3057\u3066\u6271\u308f\u308c getById / put / remove \u306e\u3044\u305a\u308c\u3082 404 \u7d4c\u8def (DeliveryUpdated / DeliveryDeleted) \u3092\u8e0f\u3080\u305f\u3081\u3001\u30b7\u30fc\u30c9\u30cf\u30f3\u30c9\u30eb `nonexistent-zzz` \u306f Fake / SQL \u53cc\u65b9\u3067 404 \u304c\u540c\u5f62\u3002blockId / pageId / categoryId \u3068\u540c\u3058 Fake\u2194SQL \u4e8c\u91cd\u6027 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c10; \u89b3\u5bdf\u5024 'del-yamato', 'del-yupack'\u3002",
                                    "example": "del-yamato",
                                    "minLength": 0,
                                    "maxLength": 128,
                                    "pattern": "^[A-Za-z0-9._:@/-]*$",
                                    "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                                },
                                "deliveryName": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 255,
                                    "title": "\u914d\u9001\u65b9\u6cd5\u540d",
                                    "description": "\u7ba1\u7406\u753b\u9762\u3067\u767b\u9332\u30fb\u66f4\u65b0\u3059\u308b\u914d\u9001\u65b9\u6cd5\u306e\u8868\u793a\u540d\u3002\u5b9f\u904b\u7528\u3067\u306f\u5e97\u8217\u72ec\u81ea\u306e\u9577\u3044\u540d\u79f0\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                                    "example": "\u30e4\u30de\u30c8\u5b85\u6025\u4fbf"
                                },
                                "visible": {
                                    "type": [
                                        "boolean",
                                        "null"
                                    ],
                                    "title": "\u51e6\u7406\u72b6\u614b\u30d5\u30e9\u30b0",
                                    "description": "\u89b3\u5bdf\u5024 'true'\u3002",
                                    "example": "true"
                                }
                            },
                            "additionalProperties": false,
                            "$comment": "\u914d\u5217\u8981\u7d20\u306fFake/Resource\u3067\u89b3\u5bdf\u3055\u308c\u305f\u65e2\u77e5property\u306b\u56fa\u5b9a\u3059\u308b\u3002\u65b0\u3057\u3044\u5217\u304c\u5fc5\u8981\u306b\u306a\u3063\u305f\u5834\u5408\u306fSemantic-Ex\u89b3\u5bdf\u306b\u8ffd\u52a0\u3057\u3066schema\u3092\u66f4\u65b0\u3059\u308b\u3002"
                        },
                        "minItems": 0
                    },
                    "count": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 2147483647,
                        "title": "\u4ef6\u6570",
                        "description": "/admin/delivery/delivery-list \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8fd4\u3059\u4ef6\u6570\u3002\u4e00\u89a7\u30fb\u96c6\u8a08\u30fb\u51e6\u7406\u7d50\u679c\u306e\u898f\u6a21\u3092\u8868\u3059\u975e\u8ca0\u6574\u6570\u3002"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "csrfToken",
                    "deliveries",
                    "count"
                ]
            },
            "POST/admin/delivery/delivery-listResponse": {
                "title": "POST /admin/delivery/delivery-list response",
                "description": "POST /admin/delivery/delivery-list response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "deliveryId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u914d\u9001\u65b9\u6cd5ID",
                        "description": "dtb_delivery.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e DeliveryEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f 32\u6841hex \u3092\u751f\u6210\u3057\u3001SQL \u5b9f\u88c5\u306f dtb_delivery.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u975e\u6570\u5024 ID \u306f SqlDeliveryStorage \u3067\u306f miss \u3068\u3057\u3066\u6271\u308f\u308c getById / put / remove \u306e\u3044\u305a\u308c\u3082 404 \u7d4c\u8def (DeliveryUpdated / DeliveryDeleted) \u3092\u8e0f\u3080\u305f\u3081\u3001\u30b7\u30fc\u30c9\u30cf\u30f3\u30c9\u30eb `nonexistent-zzz` \u306f Fake / SQL \u53cc\u65b9\u3067 404 \u304c\u540c\u5f62\u3002blockId / pageId / categoryId \u3068\u540c\u3058 Fake\u2194SQL \u4e8c\u91cd\u6027 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c10; \u89b3\u5bdf\u5024 'del-yamato', 'del-yupack'\u3002",
                        "example": "del-yamato",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    },
                    "deliveryName": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 255,
                        "title": "\u914d\u9001\u65b9\u6cd5\u540d",
                        "description": "\u7ba1\u7406\u753b\u9762\u3067\u767b\u9332\u30fb\u66f4\u65b0\u3059\u308b\u914d\u9001\u65b9\u6cd5\u306e\u8868\u793a\u540d\u3002\u5b9f\u904b\u7528\u3067\u306f\u5e97\u8217\u72ec\u81ea\u306e\u9577\u3044\u540d\u79f0\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "example": "\u30e4\u30de\u30c8\u5b85\u6025\u4fbf"
                    },
                    "visible": {
                        "type": [
                            "boolean",
                            "null"
                        ],
                        "title": "\u51e6\u7406\u72b6\u614b\u30d5\u30e9\u30b0",
                        "description": "\u89b3\u5bdf\u5024 'true'\u3002",
                        "example": "true"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "deliveryId",
                    "deliveryName",
                    "visible"
                ]
            },
            "GET/admin/layout/layoutResponse": {
                "title": "GET /admin/layout/layout response",
                "description": "GET /admin/layout/layout response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "layoutId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u30ec\u30a4\u30a2\u30a6\u30c8ID",
                        "description": "dtb_layout.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002\u65b0\u898f\u4f5c\u6210\u30d5\u30a9\u30fc\u30e0\u3067\u306f null\u3001\u7de8\u96c6\u30d5\u30a9\u30fc\u30e0\u3067\u306f\u65e2\u5b58\u30ec\u30a4\u30a2\u30a6\u30c8ID\u3002",
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "1"
                    },
                    "layoutName": {
                        "type": "string",
                        "minLength": 0,
                        "maxLength": 255,
                        "title": "\u30ec\u30a4\u30a2\u30a6\u30c8\u540d",
                        "description": "\u30ec\u30a4\u30a2\u30a6\u30c8\u306e\u8868\u793a\u540d\u3002\u65b0\u898f\u4f5c\u6210\u30d5\u30a9\u30fc\u30e0\u3067\u306f\u7a7a\u6587\u5b57\u3001\u7de8\u96c6\u30d5\u30a9\u30fc\u30e0\u3067\u306f\u4fdd\u5b58\u6e08\u307f\u5024\u3002"
                    },
                    "deviceType": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "title": "\u30c7\u30d0\u30a4\u30b9\u7a2e\u5225",
                        "description": "\u30c7\u30d0\u30a4\u30b9\u7a2e\u5225\u30de\u30b9\u30bf\u3002\u65b0\u898f\u4f5c\u6210\u30d5\u30a9\u30fc\u30e0\u3067\u306f null\u3001\u7de8\u96c6\u30d5\u30a9\u30fc\u30e0\u3067\u306f\u4fdd\u5b58\u6e08\u307f\u5024\u3002",
                        "minimum": 0,
                        "example": 10
                    },
                    "csrfToken": {
                        "title": "\u51e6\u7406\u8b58\u5225\u5b50",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u306e\u507d\u9020\u3092\u9632\u3050\u305f\u3081\u306b\u9001\u4fe1\u5143\u753b\u9762\u3067\u767a\u884c\u3055\u308c\u308b\u30c8\u30fc\u30af\u30f3\u3002",
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "form": {
                        "type": [
                            "object",
                            "array",
                            "null"
                        ],
                        "title": "\u5165\u529b\u30d5\u30a9\u30fc\u30e0",
                        "description": "Aura/WebForm\u7531\u6765\u306e\u30d5\u30a9\u30fc\u30e0\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3002\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5185\u90e8\u69cb\u9020\u306e\u305f\u3081schema\u3067\u306f\u5b58\u5728\u3068\u578b\u306e\u307f\u3092\u5951\u7d04\u3059\u308b\u3002",
                        "$comment": "Aura/WebForm\u7531\u6765\u306e\u4e0d\u900f\u660e\u30d5\u30a9\u30fc\u30e0\u8868\u73fe\u3002Resource\u5883\u754c\u3067\u306f\u30d5\u30a9\u30fc\u30e0\u306e\u5b58\u5728\u3068\u30b3\u30f3\u30c6\u30ad\u30b9\u30c8\u3060\u3051\u3092\u5951\u7d04\u3057\u3001\u5185\u90e8\u69cb\u9020\u306f\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5883\u754c\u306b\u59d4\u306d\u308b\u305f\u3081\u8ffd\u52a0\u30ad\u30fc\u5236\u7d04\u3092\u7f6e\u304b\u306a\u3044\u3002"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape."
            },
            "PUT/admin/layout/layoutResponse": {
                "title": "PUT /admin/layout/layout response",
                "description": "PUT /admin/layout/layout response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "deviceType": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "title": "\u30c7\u30d0\u30a4\u30b9\u7a2e\u5225",
                        "description": "\u30c7\u30d0\u30a4\u30b9\u7a2e\u5225\u30de\u30b9\u30bf\uff08EC-CUBE 2.x\u304b\u3089\u306e\u540d\u6b8b\uff09\u3002\u5024: 2=\u30e2\u30d0\u30a4\u30eb, 10=PC\u3002\u975e\u9023\u756a\u306eID\u306f\u65e7\u30d0\u30fc\u30b8\u30e7\u30f3\u306e\u30c7\u30d0\u30a4\u30b9\u30b5\u30dd\u30fc\u30c8\uff08\u30ac\u30e9\u30b1\u30fc\u7b49\uff09\u306b\u7531\u6765\u3002\u30da\u30fc\u30b8\u30ec\u30a4\u30a2\u30a6\u30c8\u306e\u30c7\u30d0\u30a4\u30b9\u5225\u8868\u793a\u306b\u4f7f\u7528 Fake\u89b3\u5bdf\u6570\u5024 2\u301c10; \u89b3\u5bdf\u5024 '10', '2'\u3002",
                        "example": 10,
                        "minimum": 0
                    },
                    "layoutId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u30ec\u30a4\u30a2\u30a6\u30c8ID",
                        "description": "CMS\u30ec\u30a4\u30a2\u30a6\u30c8\u3092\u8b58\u5225\u3059\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002seed \u6e08\u307f\u30ec\u30a4\u30a2\u30a6\u30c8\u3092 Fake/SQL \u540c\u578b\u306b\u6271\u3046\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 13\u301c13; \u89b3\u5bdf\u5024 'lo-pc-default', 'lo-sp-default'\u3002",
                        "example": "lo-pc-default",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    },
                    "layoutName": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u30ec\u30a4\u30a2\u30a6\u30c8\u540d",
                        "description": "\u30ec\u30a4\u30a2\u30a6\u30c8\u306e\u8868\u793a\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 4\u301c5; \u89b3\u5bdf\u5024 'PC\u6a19\u6e96', '\u30b9\u30de\u30db\u6a19\u6e96'\u3002",
                        "example": "PC\u6a19\u6e96"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "deviceType",
                    "layoutId",
                    "layoutName"
                ]
            },
            "GET/admin/layout/layout-listResponse": {
                "title": "GET /admin/layout/layout-list response",
                "description": "GET /admin/layout/layout-list response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "count": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 2147483647,
                        "title": "\u4ef6\u6570",
                        "description": "/admin/layout/layout-list \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8fd4\u3059\u4ef6\u6570\u3002\u4e00\u89a7\u30fb\u96c6\u8a08\u30fb\u51e6\u7406\u7d50\u679c\u306e\u898f\u6a21\u3092\u8868\u3059\u975e\u8ca0\u6574\u6570\u3002"
                    },
                    "layouts": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u30ec\u30a4\u30a2\u30a6\u30c8\u4e00\u89a7",
                        "description": "/admin/layout/layout-list \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u30ec\u30a4\u30a2\u30a6\u30c8\u4e00\u89a7\u3002\u914d\u5217\u8981\u7d20\u306fALPS\u610f\u5473\u3068Fake\u89b3\u5bdf\u306b\u57fa\u3065\u304d\u3001\u56fa\u5b9a\u3067\u304d\u306a\u3044\u52d5\u7684\u5217\u306f\u4f8b\u5916\u7406\u7531\u3092\u53f0\u5e33\u5316\u3059\u308b\u3002",
                        "items": {
                            "type": [
                                "object",
                                "null"
                            ],
                            "title": "\u30ec\u30a4\u30a2\u30a6\u30c8",
                            "description": "/admin/layout/layout-list \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u30ec\u30a4\u30a2\u30a6\u30c8\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `layouts` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002",
                            "properties": {
                                "deviceType": {
                                    "type": [
                                        "integer",
                                        "null"
                                    ],
                                    "title": "\u30c7\u30d0\u30a4\u30b9\u7a2e\u5225",
                                    "description": "\u30c7\u30d0\u30a4\u30b9\u7a2e\u5225\u30de\u30b9\u30bf\uff08EC-CUBE 2.x\u304b\u3089\u306e\u540d\u6b8b\uff09\u3002\u5024: 2=\u30e2\u30d0\u30a4\u30eb, 10=PC\u3002\u975e\u9023\u756a\u306eID\u306f\u65e7\u30d0\u30fc\u30b8\u30e7\u30f3\u306e\u30c7\u30d0\u30a4\u30b9\u30b5\u30dd\u30fc\u30c8\uff08\u30ac\u30e9\u30b1\u30fc\u7b49\uff09\u306b\u7531\u6765\u3002\u30da\u30fc\u30b8\u30ec\u30a4\u30a2\u30a6\u30c8\u306e\u30c7\u30d0\u30a4\u30b9\u5225\u8868\u793a\u306b\u4f7f\u7528 Fake\u89b3\u5bdf\u6570\u5024 2\u301c10; \u89b3\u5bdf\u5024 '10', '2'\u3002",
                                    "example": 10,
                                    "minimum": 0
                                },
                                "layoutId": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "title": "\u30ec\u30a4\u30a2\u30a6\u30c8ID",
                                    "description": "CMS\u30ec\u30a4\u30a2\u30a6\u30c8\u3092\u8b58\u5225\u3059\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002seed \u6e08\u307f\u30ec\u30a4\u30a2\u30a6\u30c8\u3092 Fake/SQL \u540c\u578b\u306b\u6271\u3046\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 13\u301c13; \u89b3\u5bdf\u5024 'lo-pc-default', 'lo-sp-default'\u3002",
                                    "example": "lo-pc-default",
                                    "minLength": 0,
                                    "maxLength": 128,
                                    "pattern": "^[A-Za-z0-9._:@/-]*$",
                                    "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                                },
                                "layoutName": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 32,
                                    "title": "\u30ec\u30a4\u30a2\u30a6\u30c8\u540d",
                                    "description": "\u30ec\u30a4\u30a2\u30a6\u30c8\u306e\u8868\u793a\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 4\u301c5; \u89b3\u5bdf\u5024 'PC\u6a19\u6e96', '\u30b9\u30de\u30db\u6a19\u6e96'\u3002",
                                    "example": "PC\u6a19\u6e96"
                                }
                            },
                            "additionalProperties": false,
                            "$comment": "\u914d\u5217\u8981\u7d20\u306fFake/Resource\u3067\u89b3\u5bdf\u3055\u308c\u305f\u65e2\u77e5property\u306b\u56fa\u5b9a\u3059\u308b\u3002\u65b0\u3057\u3044\u5217\u304c\u5fc5\u8981\u306b\u306a\u3063\u305f\u5834\u5408\u306fSemantic-Ex\u89b3\u5bdf\u306b\u8ffd\u52a0\u3057\u3066schema\u3092\u66f4\u65b0\u3059\u308b\u3002"
                        },
                        "minItems": 0
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "count",
                    "layouts"
                ]
            },
            "POST/admin/mail-template/createResponse": {
                "title": "POST /admin/mail-template/create response",
                "description": "Admin mail template creation response for Web/HTTP workflow verification.",
                "type": "object",
                "properties": {
                    "mailTemplateId": {
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 2147483647
                    },
                    "mailTemplateName": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 255
                    },
                    "fileName": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 255
                    },
                    "mailSubject": {
                        "type": "string",
                        "minLength": 0,
                        "maxLength": 255
                    }
                },
                "required": [
                    "mailTemplateId",
                    "mailTemplateName",
                    "fileName",
                    "mailSubject"
                ],
                "additionalProperties": false
            },
            "GET/admin/news/newsResponse": {
                "title": "GET /admin/news/news response",
                "description": "GET /admin/news/news response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "form": {
                        "type": [
                            "object",
                            "array",
                            "null"
                        ],
                        "title": "\u5165\u529b\u30d5\u30a9\u30fc\u30e0",
                        "description": "Aura/WebForm\u7531\u6765\u306e\u30d5\u30a9\u30fc\u30e0\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3002\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5185\u90e8\u69cb\u9020\u306e\u305f\u3081schema\u3067\u306f\u5b58\u5728\u3068\u578b\u306e\u307f\u3092\u5951\u7d04\u3059\u308b\u3002",
                        "$comment": "Aura/WebForm\u7531\u6765\u306e\u4e0d\u900f\u660e\u30d5\u30a9\u30fc\u30e0\u8868\u73fe\u3002Resource\u5883\u754c\u3067\u306f\u30d5\u30a9\u30fc\u30e0\u306e\u5b58\u5728\u3068\u30b3\u30f3\u30c6\u30ad\u30b9\u30c8\u3060\u3051\u3092\u5951\u7d04\u3057\u3001\u5185\u90e8\u69cb\u9020\u306f\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5883\u754c\u306b\u59d4\u306d\u308b\u305f\u3081\u8ffd\u52a0\u30ad\u30fc\u5236\u7d04\u3092\u7f6e\u304b\u306a\u3044\u3002"
                    },
                    "newsUrl": {
                        "title": "\u5916\u90e8URL",
                        "description": "\u5916\u90e8\u30ea\u30f3\u30afURL\u3002\u8a2d\u5b9a\u6642\u306f\u30cb\u30e5\u30fc\u30b9\u672c\u6587\u306e\u4ee3\u308f\u308a\u306b\u3053\u306eURL\u3078\u9077\u79fb",
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "linkMethod": {
                        "type": [
                            "boolean",
                            "null"
                        ],
                        "title": "\u65b0\u898f\u30a6\u30a3\u30f3\u30c9\u30a6\u3067\u958b\u304f",
                        "description": "\u5916\u90e8URL\u306e\u30ea\u30f3\u30af\u958b\u304d\u65b9\uff08boolean\uff09\u3002false=\u540c\u4e00\u30a6\u30a3\u30f3\u30c9\u30a6, true=\u65b0\u898f\u30a6\u30a3\u30f3\u30c9\u30a6\uff08target=\"_blank\"\uff09\u3002\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u3067target\u5c5e\u6027\u306e\u51fa\u529b\u5236\u5fa1\u306b\u4f7f\u7528 \u89b3\u5bdf\u5024 'false'\u3002",
                        "example": "false"
                    },
                    "newsId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u30cb\u30e5\u30fc\u30b9ID",
                        "description": "dtb_news.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e NewsEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f `nw-` \u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9\u4ed8\u304d\u306e\u82f1\u6570\u5b57\u3092\u751f\u6210\u3057\uff08\u30b7\u30fc\u30c9 `nw-welcome` \u3092\u542b\u3080\uff09\u3001SQL \u5b9f\u88c5\u306f dtb_news.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u975e\u6570\u5024 ID \u306f SqlNewsStorage \u3067\u306f miss \u3068\u3057\u3066\u6271\u308f\u308c getById / put / remove \u306e\u3044\u305a\u308c\u3082 404 \u7d4c\u8def (AdminNewsFetched / NewsUpdated / NewsDeleted) \u3092\u8e0f\u3080\u305f\u3081\u3001\u30b7\u30fc\u30c9\u30cf\u30f3\u30c9\u30eb `nw-welcome` \u3084 `nonexistent` \u306f Fake / SQL \u53cc\u65b9\u3067 404 \u304c\u540c\u5f62 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c10; \u89b3\u5bdf\u5024 'nw-welcome'\u3002",
                        "example": "nw-welcome",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    },
                    "newsTitle": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u30cb\u30e5\u30fc\u30b9\u30bf\u30a4\u30c8\u30eb",
                        "description": "\u30cb\u30e5\u30fc\u30b9\u8a18\u4e8b\u306e\u898b\u51fa\u3057 Fake\u89b3\u5bdf\u6587\u5b57\u9577 4\u301c4; \u89b3\u5bdf\u5024 '\u3088\u3046\u3053\u305d'\u3002",
                        "example": "\u3088\u3046\u3053\u305d"
                    },
                    "csrfToken": {
                        "title": "\u51e6\u7406\u8b58\u5225\u5b50",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u306e\u507d\u9020\u3092\u9632\u3050\u305f\u3081\u306b\u9001\u4fe1\u5143\u753b\u9762\u3067\u767a\u884c\u3055\u308c\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "publishDate": {
                        "title": "\u516c\u958b\u65e5",
                        "description": "\u30cb\u30e5\u30fc\u30b9\u306e\u516c\u958b\u65e5\u6642\u3002\u30d5\u30ed\u30f3\u30c8\u306e\u8868\u793a\u9806\u3092\u5236\u5fa1 Fake\u89b3\u5bdf\u6587\u5b57\u9577 25\u301c25; \u89b3\u5bdf\u5024 '2026-01-01T00:00:00+09:00'\u3002",
                        "type": [
                            "string",
                            "null"
                        ],
                        "example": "2026-01-01T00:00:00+09:00",
                        "$comment": "\u672a\u5165\u91d1\u30fb\u672a\u767a\u9001\u30fb\u672a\u516c\u958b\u306a\u3069\u672a\u78ba\u5b9a\u65e5\u6642\u306fEC-CUBE\u5883\u754c\u3067\u7a7a\u6587\u5b57\u3068\u3057\u3066\u73fe\u308c\u308b\u305f\u3081\u3001\u65e5\u4ed8/\u65e5\u6642\u6587\u5b57\u5217\u306b\u52a0\u3048\u3066\u7a7a\u6587\u5b57\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "pattern": "^$|\\d{4}-\\d{2}-\\d{2}([ T]\\d{2}:\\d{2}:\\d{2}([+-]\\d{2}:?\\d{2}|Z)?)?$"
                    },
                    "newsDescription": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 2000,
                        "title": "\u30cb\u30e5\u30fc\u30b9\u672c\u6587",
                        "description": "\u30cb\u30e5\u30fc\u30b9\u8a18\u4e8b\u306e\u672c\u6587\u3002HTML\u5165\u529b\u53ef\u80fd\u3067HTMLPurifier\u306b\u3088\u308b\u6d44\u5316\u3042\u308a Fake\u89b3\u5bdf\u6587\u5b57\u9577 14\u301c14; \u89b3\u5bdf\u5024 'EC-CUBE \u3078\u3088\u3046\u3053\u305d\u3002'\u3002",
                        "example": "EC-CUBE \u3078\u3088\u3046\u3053\u305d\u3002"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "newsUrl",
                    "linkMethod",
                    "newsId",
                    "newsTitle",
                    "publishDate",
                    "newsDescription"
                ]
            },
            "PUT/admin/news/newsResponse": {
                "title": "PUT /admin/news/news response",
                "description": "PUT /admin/news/news response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "newsUrl": {
                        "title": "\u5916\u90e8URL",
                        "description": "\u5916\u90e8\u30ea\u30f3\u30afURL\u3002\u8a2d\u5b9a\u6642\u306f\u30cb\u30e5\u30fc\u30b9\u672c\u6587\u306e\u4ee3\u308f\u308a\u306b\u3053\u306eURL\u3078\u9077\u79fb",
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "linkMethod": {
                        "type": [
                            "boolean",
                            "null"
                        ],
                        "title": "\u65b0\u898f\u30a6\u30a3\u30f3\u30c9\u30a6\u3067\u958b\u304f",
                        "description": "\u5916\u90e8URL\u306e\u30ea\u30f3\u30af\u958b\u304d\u65b9\uff08boolean\uff09\u3002false=\u540c\u4e00\u30a6\u30a3\u30f3\u30c9\u30a6, true=\u65b0\u898f\u30a6\u30a3\u30f3\u30c9\u30a6\uff08target=\"_blank\"\uff09\u3002\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u3067target\u5c5e\u6027\u306e\u51fa\u529b\u5236\u5fa1\u306b\u4f7f\u7528 \u89b3\u5bdf\u5024 'false'\u3002",
                        "example": "false"
                    },
                    "newsId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u30cb\u30e5\u30fc\u30b9ID",
                        "description": "dtb_news.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e NewsEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f `nw-` \u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9\u4ed8\u304d\u306e\u82f1\u6570\u5b57\u3092\u751f\u6210\u3057\uff08\u30b7\u30fc\u30c9 `nw-welcome` \u3092\u542b\u3080\uff09\u3001SQL \u5b9f\u88c5\u306f dtb_news.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u975e\u6570\u5024 ID \u306f SqlNewsStorage \u3067\u306f miss \u3068\u3057\u3066\u6271\u308f\u308c getById / put / remove \u306e\u3044\u305a\u308c\u3082 404 \u7d4c\u8def (AdminNewsFetched / NewsUpdated / NewsDeleted) \u3092\u8e0f\u3080\u305f\u3081\u3001\u30b7\u30fc\u30c9\u30cf\u30f3\u30c9\u30eb `nw-welcome` \u3084 `nonexistent` \u306f Fake / SQL \u53cc\u65b9\u3067 404 \u304c\u540c\u5f62 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c10; \u89b3\u5bdf\u5024 'nw-welcome'\u3002",
                        "example": "nw-welcome",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    },
                    "newsTitle": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u30cb\u30e5\u30fc\u30b9\u30bf\u30a4\u30c8\u30eb",
                        "description": "\u30cb\u30e5\u30fc\u30b9\u8a18\u4e8b\u306e\u898b\u51fa\u3057 Fake\u89b3\u5bdf\u6587\u5b57\u9577 4\u301c4; \u89b3\u5bdf\u5024 '\u3088\u3046\u3053\u305d'\u3002",
                        "example": "\u3088\u3046\u3053\u305d"
                    },
                    "publishDate": {
                        "title": "\u516c\u958b\u65e5",
                        "description": "\u30cb\u30e5\u30fc\u30b9\u306e\u516c\u958b\u65e5\u6642\u3002\u30d5\u30ed\u30f3\u30c8\u306e\u8868\u793a\u9806\u3092\u5236\u5fa1 Fake\u89b3\u5bdf\u6587\u5b57\u9577 25\u301c25; \u89b3\u5bdf\u5024 '2026-01-01T00:00:00+09:00'\u3002",
                        "type": [
                            "string",
                            "null"
                        ],
                        "example": "2026-01-01T00:00:00+09:00",
                        "$comment": "\u672a\u5165\u91d1\u30fb\u672a\u767a\u9001\u30fb\u672a\u516c\u958b\u306a\u3069\u672a\u78ba\u5b9a\u65e5\u6642\u306fEC-CUBE\u5883\u754c\u3067\u7a7a\u6587\u5b57\u3068\u3057\u3066\u73fe\u308c\u308b\u305f\u3081\u3001\u65e5\u4ed8/\u65e5\u6642\u6587\u5b57\u5217\u306b\u52a0\u3048\u3066\u7a7a\u6587\u5b57\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "pattern": "^$|\\d{4}-\\d{2}-\\d{2}([ T]\\d{2}:\\d{2}:\\d{2}([+-]\\d{2}:?\\d{2}|Z)?)?$"
                    },
                    "newsDescription": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 2000,
                        "title": "\u30cb\u30e5\u30fc\u30b9\u672c\u6587",
                        "description": "\u30cb\u30e5\u30fc\u30b9\u8a18\u4e8b\u306e\u672c\u6587\u3002HTML\u5165\u529b\u53ef\u80fd\u3067HTMLPurifier\u306b\u3088\u308b\u6d44\u5316\u3042\u308a Fake\u89b3\u5bdf\u6587\u5b57\u9577 14\u301c14; \u89b3\u5bdf\u5024 'EC-CUBE \u3078\u3088\u3046\u3053\u305d\u3002'\u3002",
                        "example": "EC-CUBE \u3078\u3088\u3046\u3053\u305d\u3002"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "newsUrl",
                    "linkMethod",
                    "newsId",
                    "newsTitle",
                    "publishDate",
                    "newsDescription"
                ]
            },
            "DELETE/admin/news/newsResponse": {
                "title": "DELETE /admin/news/news response",
                "description": "DELETE /admin/news/news response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "newsId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u30cb\u30e5\u30fc\u30b9ID",
                        "description": "dtb_news.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e NewsEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f `nw-` \u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9\u4ed8\u304d\u306e\u82f1\u6570\u5b57\u3092\u751f\u6210\u3057\uff08\u30b7\u30fc\u30c9 `nw-welcome` \u3092\u542b\u3080\uff09\u3001SQL \u5b9f\u88c5\u306f dtb_news.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u975e\u6570\u5024 ID \u306f SqlNewsStorage \u3067\u306f miss \u3068\u3057\u3066\u6271\u308f\u308c getById / put / remove \u306e\u3044\u305a\u308c\u3082 404 \u7d4c\u8def (AdminNewsFetched / NewsUpdated / NewsDeleted) \u3092\u8e0f\u3080\u305f\u3081\u3001\u30b7\u30fc\u30c9\u30cf\u30f3\u30c9\u30eb `nw-welcome` \u3084 `nonexistent` \u306f Fake / SQL \u53cc\u65b9\u3067 404 \u304c\u540c\u5f62 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c10; \u89b3\u5bdf\u5024 'nw-welcome'\u3002",
                        "example": "nw-welcome",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "newsId"
                ]
            },
            "GET/admin/news/news-listResponse": {
                "title": "GET /admin/news/news-list response",
                "description": "GET /admin/news/news-list response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "news": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u30cb\u30e5\u30fc\u30b9\u4e00\u89a7",
                        "description": "/admin/news/news-list \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u30cb\u30e5\u30fc\u30b9\u4e00\u89a7\u3002\u914d\u5217\u8981\u7d20\u306fALPS\u610f\u5473\u3068Fake\u89b3\u5bdf\u306b\u57fa\u3065\u304d\u3001\u56fa\u5b9a\u3067\u304d\u306a\u3044\u52d5\u7684\u5217\u306f\u4f8b\u5916\u7406\u7531\u3092\u53f0\u5e33\u5316\u3059\u308b\u3002",
                        "items": {
                            "type": [
                                "object",
                                "null"
                            ],
                            "title": "\u30cb\u30e5\u30fc\u30b9",
                            "description": "/admin/news/news-list \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u30cb\u30e5\u30fc\u30b9\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `news` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002",
                            "properties": {
                                "newsUrl": {
                                    "title": "\u5916\u90e8URL",
                                    "description": "\u5916\u90e8\u30ea\u30f3\u30afURL\u3002\u8a2d\u5b9a\u6642\u306f\u30cb\u30e5\u30fc\u30b9\u672c\u6587\u306e\u4ee3\u308f\u308a\u306b\u3053\u306eURL\u3078\u9077\u79fb",
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "format": "uri-reference",
                                    "minLength": 1,
                                    "maxLength": 2048,
                                    "example": "/products"
                                },
                                "linkMethod": {
                                    "type": [
                                        "boolean",
                                        "null"
                                    ],
                                    "title": "\u65b0\u898f\u30a6\u30a3\u30f3\u30c9\u30a6\u3067\u958b\u304f",
                                    "description": "\u5916\u90e8URL\u306e\u30ea\u30f3\u30af\u958b\u304d\u65b9\uff08boolean\uff09\u3002false=\u540c\u4e00\u30a6\u30a3\u30f3\u30c9\u30a6, true=\u65b0\u898f\u30a6\u30a3\u30f3\u30c9\u30a6\uff08target=\"_blank\"\uff09\u3002\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u3067target\u5c5e\u6027\u306e\u51fa\u529b\u5236\u5fa1\u306b\u4f7f\u7528 \u89b3\u5bdf\u5024 'false'\u3002",
                                    "example": "false"
                                },
                                "newsId": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "title": "\u30cb\u30e5\u30fc\u30b9ID",
                                    "description": "dtb_news.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e NewsEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f `nw-` \u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9\u4ed8\u304d\u306e\u82f1\u6570\u5b57\u3092\u751f\u6210\u3057\uff08\u30b7\u30fc\u30c9 `nw-welcome` \u3092\u542b\u3080\uff09\u3001SQL \u5b9f\u88c5\u306f dtb_news.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u975e\u6570\u5024 ID \u306f SqlNewsStorage \u3067\u306f miss \u3068\u3057\u3066\u6271\u308f\u308c getById / put / remove \u306e\u3044\u305a\u308c\u3082 404 \u7d4c\u8def (AdminNewsFetched / NewsUpdated / NewsDeleted) \u3092\u8e0f\u3080\u305f\u3081\u3001\u30b7\u30fc\u30c9\u30cf\u30f3\u30c9\u30eb `nw-welcome` \u3084 `nonexistent` \u306f Fake / SQL \u53cc\u65b9\u3067 404 \u304c\u540c\u5f62 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c10; \u89b3\u5bdf\u5024 'nw-welcome'\u3002",
                                    "example": "nw-welcome",
                                    "minLength": 0,
                                    "maxLength": 128,
                                    "pattern": "^[A-Za-z0-9._:@/-]*$",
                                    "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                                },
                                "newsTitle": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 32,
                                    "title": "\u30cb\u30e5\u30fc\u30b9\u30bf\u30a4\u30c8\u30eb",
                                    "description": "\u30cb\u30e5\u30fc\u30b9\u8a18\u4e8b\u306e\u898b\u51fa\u3057 Fake\u89b3\u5bdf\u6587\u5b57\u9577 4\u301c4; \u89b3\u5bdf\u5024 '\u3088\u3046\u3053\u305d'\u3002",
                                    "example": "\u3088\u3046\u3053\u305d"
                                },
                                "publishDate": {
                                    "title": "\u516c\u958b\u65e5",
                                    "description": "\u30cb\u30e5\u30fc\u30b9\u306e\u516c\u958b\u65e5\u6642\u3002\u30d5\u30ed\u30f3\u30c8\u306e\u8868\u793a\u9806\u3092\u5236\u5fa1 Fake\u89b3\u5bdf\u6587\u5b57\u9577 25\u301c25; \u89b3\u5bdf\u5024 '2026-01-01T00:00:00+09:00'\u3002",
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "example": "2026-01-01T00:00:00+09:00",
                                    "$comment": "\u672a\u5165\u91d1\u30fb\u672a\u767a\u9001\u30fb\u672a\u516c\u958b\u306a\u3069\u672a\u78ba\u5b9a\u65e5\u6642\u306fEC-CUBE\u5883\u754c\u3067\u7a7a\u6587\u5b57\u3068\u3057\u3066\u73fe\u308c\u308b\u305f\u3081\u3001\u65e5\u4ed8/\u65e5\u6642\u6587\u5b57\u5217\u306b\u52a0\u3048\u3066\u7a7a\u6587\u5b57\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                                    "pattern": "^$|\\d{4}-\\d{2}-\\d{2}([ T]\\d{2}:\\d{2}:\\d{2}([+-]\\d{2}:?\\d{2}|Z)?)?$"
                                },
                                "newsDescription": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 2000,
                                    "title": "\u30cb\u30e5\u30fc\u30b9\u672c\u6587",
                                    "description": "\u30cb\u30e5\u30fc\u30b9\u8a18\u4e8b\u306e\u672c\u6587\u3002HTML\u5165\u529b\u53ef\u80fd\u3067HTMLPurifier\u306b\u3088\u308b\u6d44\u5316\u3042\u308a Fake\u89b3\u5bdf\u6587\u5b57\u9577 14\u301c14; \u89b3\u5bdf\u5024 'EC-CUBE \u3078\u3088\u3046\u3053\u305d\u3002'\u3002",
                                    "example": "EC-CUBE \u3078\u3088\u3046\u3053\u305d\u3002"
                                }
                            },
                            "additionalProperties": false,
                            "$comment": "\u914d\u5217\u8981\u7d20\u306fFake/Resource\u3067\u89b3\u5bdf\u3055\u308c\u305f\u65e2\u77e5property\u306b\u56fa\u5b9a\u3059\u308b\u3002\u65b0\u3057\u3044\u5217\u304c\u5fc5\u8981\u306b\u306a\u3063\u305f\u5834\u5408\u306fSemantic-Ex\u89b3\u5bdf\u306b\u8ffd\u52a0\u3057\u3066schema\u3092\u66f4\u65b0\u3059\u308b\u3002"
                        },
                        "minItems": 0
                    },
                    "count": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 2147483647,
                        "title": "\u4ef6\u6570",
                        "description": "/admin/news/news-list \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8fd4\u3059\u4ef6\u6570\u3002\u4e00\u89a7\u30fb\u96c6\u8a08\u30fb\u51e6\u7406\u7d50\u679c\u306e\u898f\u6a21\u3092\u8868\u3059\u975e\u8ca0\u6574\u6570\u3002"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "news",
                    "count",
                    "csrfToken"
                ]
            },
            "POST/admin/news/news-listResponse": {
                "title": "POST /admin/news/news-list response",
                "description": "POST /admin/news/news-list response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "newsUrl": {
                        "title": "\u5916\u90e8URL",
                        "description": "\u5916\u90e8\u30ea\u30f3\u30afURL\u3002\u8a2d\u5b9a\u6642\u306f\u30cb\u30e5\u30fc\u30b9\u672c\u6587\u306e\u4ee3\u308f\u308a\u306b\u3053\u306eURL\u3078\u9077\u79fb",
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "linkMethod": {
                        "type": [
                            "boolean",
                            "null"
                        ],
                        "title": "\u65b0\u898f\u30a6\u30a3\u30f3\u30c9\u30a6\u3067\u958b\u304f",
                        "description": "\u5916\u90e8URL\u306e\u30ea\u30f3\u30af\u958b\u304d\u65b9\uff08boolean\uff09\u3002false=\u540c\u4e00\u30a6\u30a3\u30f3\u30c9\u30a6, true=\u65b0\u898f\u30a6\u30a3\u30f3\u30c9\u30a6\uff08target=\"_blank\"\uff09\u3002\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u3067target\u5c5e\u6027\u306e\u51fa\u529b\u5236\u5fa1\u306b\u4f7f\u7528 \u89b3\u5bdf\u5024 'false'\u3002",
                        "example": "false"
                    },
                    "newsId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u30cb\u30e5\u30fc\u30b9ID",
                        "description": "dtb_news.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e NewsEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f `nw-` \u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9\u4ed8\u304d\u306e\u82f1\u6570\u5b57\u3092\u751f\u6210\u3057\uff08\u30b7\u30fc\u30c9 `nw-welcome` \u3092\u542b\u3080\uff09\u3001SQL \u5b9f\u88c5\u306f dtb_news.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u975e\u6570\u5024 ID \u306f SqlNewsStorage \u3067\u306f miss \u3068\u3057\u3066\u6271\u308f\u308c getById / put / remove \u306e\u3044\u305a\u308c\u3082 404 \u7d4c\u8def (AdminNewsFetched / NewsUpdated / NewsDeleted) \u3092\u8e0f\u3080\u305f\u3081\u3001\u30b7\u30fc\u30c9\u30cf\u30f3\u30c9\u30eb `nw-welcome` \u3084 `nonexistent` \u306f Fake / SQL \u53cc\u65b9\u3067 404 \u304c\u540c\u5f62 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c10; \u89b3\u5bdf\u5024 'nw-welcome'\u3002",
                        "example": "nw-welcome",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    },
                    "newsTitle": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u30cb\u30e5\u30fc\u30b9\u30bf\u30a4\u30c8\u30eb",
                        "description": "\u30cb\u30e5\u30fc\u30b9\u8a18\u4e8b\u306e\u898b\u51fa\u3057 Fake\u89b3\u5bdf\u6587\u5b57\u9577 4\u301c4; \u89b3\u5bdf\u5024 '\u3088\u3046\u3053\u305d'\u3002",
                        "example": "\u3088\u3046\u3053\u305d"
                    },
                    "publishDate": {
                        "title": "\u516c\u958b\u65e5",
                        "description": "\u30cb\u30e5\u30fc\u30b9\u306e\u516c\u958b\u65e5\u6642\u3002\u30d5\u30ed\u30f3\u30c8\u306e\u8868\u793a\u9806\u3092\u5236\u5fa1 Fake\u89b3\u5bdf\u6587\u5b57\u9577 25\u301c25; \u89b3\u5bdf\u5024 '2026-01-01T00:00:00+09:00'\u3002",
                        "type": [
                            "string",
                            "null"
                        ],
                        "example": "2026-01-01T00:00:00+09:00",
                        "$comment": "\u672a\u5165\u91d1\u30fb\u672a\u767a\u9001\u30fb\u672a\u516c\u958b\u306a\u3069\u672a\u78ba\u5b9a\u65e5\u6642\u306fEC-CUBE\u5883\u754c\u3067\u7a7a\u6587\u5b57\u3068\u3057\u3066\u73fe\u308c\u308b\u305f\u3081\u3001\u65e5\u4ed8/\u65e5\u6642\u6587\u5b57\u5217\u306b\u52a0\u3048\u3066\u7a7a\u6587\u5b57\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "pattern": "^$|\\d{4}-\\d{2}-\\d{2}([ T]\\d{2}:\\d{2}:\\d{2}([+-]\\d{2}:?\\d{2}|Z)?)?$"
                    },
                    "newsDescription": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 2000,
                        "title": "\u30cb\u30e5\u30fc\u30b9\u672c\u6587",
                        "description": "\u30cb\u30e5\u30fc\u30b9\u8a18\u4e8b\u306e\u672c\u6587\u3002HTML\u5165\u529b\u53ef\u80fd\u3067HTMLPurifier\u306b\u3088\u308b\u6d44\u5316\u3042\u308a Fake\u89b3\u5bdf\u6587\u5b57\u9577 14\u301c14; \u89b3\u5bdf\u5024 'EC-CUBE \u3078\u3088\u3046\u3053\u305d\u3002'\u3002",
                        "example": "EC-CUBE \u3078\u3088\u3046\u3053\u305d\u3002"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "newsUrl",
                    "linkMethod",
                    "newsId",
                    "newsTitle",
                    "publishDate",
                    "newsDescription"
                ]
            },
            "POST/admin/order/bulk-deleteResponse": {
                "title": "POST /admin/order/bulk-delete response",
                "description": "POST /admin/order/bulk-delete response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "requestedCount": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 2147483647,
                        "title": "\u4ef6\u6570",
                        "description": "/admin/order/bulk-delete \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8fd4\u3059\u4ef6\u6570\u3002\u4e00\u89a7\u30fb\u96c6\u8a08\u30fb\u51e6\u7406\u7d50\u679c\u306e\u898f\u6a21\u3092\u8868\u3059\u975e\u8ca0\u6574\u6570\u3002"
                    },
                    "orderNos": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u6ce8\u6587\u756a\u53f7\u4e00\u89a7",
                        "description": "/admin/order/bulk-delete \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u6ce8\u6587\u756a\u53f7\u4e00\u89a7\u3002ALPS\u3001Fake\u89b3\u5bdf\u3001Resource\u5883\u754c\u306e\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305f\u696d\u52d9\u5951\u7d04\u3002",
                        "items": {
                            "type": "string",
                            "title": "\u6ce8\u6587\u756a\u53f7",
                            "minLength": 1,
                            "maxLength": 64,
                            "pattern": "^[A-Za-z0-9._:-]+$",
                            "description": "/admin/order/bulk-delete \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u6ce8\u6587\u884c\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `orderNos` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002"
                        },
                        "minItems": 0
                    },
                    "changedCount": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 2147483647,
                        "title": "\u4ef6\u6570",
                        "description": "/admin/order/bulk-delete \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8fd4\u3059\u4ef6\u6570\u3002\u4e00\u89a7\u30fb\u96c6\u8a08\u30fb\u51e6\u7406\u7d50\u679c\u306e\u898f\u6a21\u3092\u8868\u3059\u975e\u8ca0\u6574\u6570\u3002"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "requestedCount",
                    "orderNos",
                    "changedCount"
                ]
            },
            "POST/admin/order/createResponse": {
                "title": "POST /admin/order/create response",
                "description": "POST /admin/order/create response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "message": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u6ce8\u6587\u30e1\u30c3\u30bb\u30fc\u30b8",
                        "description": "/admin/order/create \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u51e6\u7406\u7d50\u679c\u30e1\u30c3\u30bb\u30fc\u30b8\u3002\u6ce8\u6587\u6642\u304a\u554f\u3044\u5408\u308f\u305b\u6b04\u3067\u306f\u306a\u304f\u3001\u753b\u9762\u9077\u79fb\u3084\u5b8c\u4e86\u8868\u793a\u306e\u305f\u3081\u306e\u901a\u77e5\u6587\u3002",
                        "example": "\u914d\u9001\u306f\u5e73\u65e5\u5e0c\u671b\u3067\u3059\u3002"
                    },
                    "orderNo": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 64,
                        "title": "\u6ce8\u6587\u756a\u53f7",
                        "description": "\u9867\u5ba2\u5411\u3051\u306e\u6ce8\u6587\u756a\u53f7\u3002\u30d5\u30a9\u30fc\u30de\u30c3\u30c8\u306f\u30ab\u30b9\u30bf\u30de\u30a4\u30ba\u53ef\u80fd Fake\u89b3\u5bdf\u6587\u5b57\u9577 32\u301c32; \u89b3\u5bdf\u5024 'past0000000000000000000000000001'\u3002",
                        "example": "past0000000000000000000000000001"
                    },
                    "customerId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u4f1a\u54e1ID",
                        "description": "dtb_customer.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e Entity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\uff08\u30de\u30b9\u30a2\u30b5\u30a4\u30f3\u30e1\u30f3\u30c8\u9632\u6b62\u306e\u305f\u3081\u3001Session/AuthZ \u7d4c\u7531\u3067\u8aad\u307f\u51fa\u3057\u3001\u30ea\u30af\u30a8\u30b9\u30c8\u672c\u6587\u304b\u3089\u306f\u53d7\u3051\u53d6\u3089\u306a\u3044\uff09\u3002Favorite / Cart / Order \u306e\u6240\u6709\u8005\u30ad\u30fc\u3068\u3057\u3066\u6a2a\u65ad\u4f7f\u7528 Fake\u89b3\u5bdf\u6587\u5b57\u9577 12\u301c32; \u89b3\u5bdf\u5024 'customer-001', '0123456789abcdef0123456789abcdef', 'customer-002', 'favorite-list-customer', 'favorite-html-customer', 'fedcba9876543210fedcba9876543210', 'aaaaaaaa00000000bbbbbbbb11111111', '10000000aaaa1111bbbb2222cccc3333'\u3002",
                        "example": "customer-001",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    },
                    "paymentMethodId": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 2147483647,
                        "title": "\u652f\u6255\u65b9\u6cd5ID",
                        "description": "\u53d7\u6ce8\u306b\u7d10\u3065\u304f\u652f\u6255\u65b9\u6cd5\u30de\u30b9\u30bfID\u3002Fake/EC-CUBE\u5883\u754c\u3067\u306fDB\u63a1\u756a\u5024\u3068\u3057\u3066\u6271\u3046\u3002",
                        "example": 2
                    },
                    "subtotal": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "title": "\u5546\u54c1\u5c0f\u8a08",
                        "description": "\u5546\u54c1\u5408\u8a08\u91d1\u984d\uff08\u7a0e\u8fbc\uff09\u3002\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u5024\u5f15\u304d\u9069\u7528\u524d\u306e\u5546\u54c1\u660e\u7d30\uff08orderItemType=1\uff09\u306e\u307f\u306e\u5408\u8a08\u3002PurchaseFlow.calculateSubTotal()\u3067\u8a08\u7b97\u3002\u9001\u6599\u7121\u6599\u6761\u4ef6\u306e\u5224\u5b9a\u57fa\u6e96\u306b\u3082\u4f7f\u7528\uff08\u304a\u5c4a\u3051\u5148\u3054\u3068\u306b\u5224\u5b9a\uff09 Fake\u89b3\u5bdf\u6570\u5024 11000\u301c11000; \u89b3\u5bdf\u5024 '11000'\u3002",
                        "example": 11000,
                        "minimum": 0,
                        "maximum": 999999999
                    },
                    "deliveryFeeTotal": {
                        "title": "\u9001\u6599\u5408\u8a08",
                        "description": "\u5168\u914d\u9001\u5148\u306e\u9001\u6599\u5408\u8a08\uff08\u30b9\u30ca\u30c3\u30d7\u30b7\u30e7\u30c3\u30c8\uff09\u3002deliveryFeeAmount\uff08\u5730\u57df\u5225\u9001\u6599\uff09+ deliveryFee\uff08\u5546\u54c1\u5225\u9001\u6599\uff09\u00d7\u6570\u91cf \u306e\u5408\u8a08\u3002DeliveryFeePreprocessor\u3067\u8a08\u7b97\u3002\u30ab\u30fc\u30c8\u3068\u53d7\u6ce8\u306e\u4e21\u65b9\u3067\u4f7f\u7528 Fake\u89b3\u5bdf\u6570\u5024 0\u301c800; \u89b3\u5bdf\u5024 '600', '0', '500', '800', '700'\u3002",
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 600
                    },
                    "charge": {
                        "title": "\u624b\u6570\u6599",
                        "description": "\u53d7\u6ce8\u306e\u6c7a\u6e08\u624b\u6570\u6599\u3002paymentCharge\uff08\u652f\u6255\u65b9\u6cd5\u30de\u30b9\u30bf\u306e\u624b\u6570\u6599\uff09\u306e\u30b9\u30ca\u30c3\u30d7\u30b7\u30e7\u30c3\u30c8\u3002PaymentChargePreprocessor\u306b\u3088\u308a\u53d7\u6ce8\u4f5c\u6210\u6642\u306b\u30b3\u30d4\u30fc\u3055\u308c\u308b Fake\u89b3\u5bdf\u6570\u5024 0\u301c300; \u89b3\u5bdf\u5024 '0', '300', '200'\u3002",
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 0
                    },
                    "discount": {
                        "title": "\u5024\u5f15\u304d\u984d",
                        "description": "\u53d7\u6ce8\u5168\u4f53\u306e\u5024\u5f15\u304d\u5408\u8a08\u984d\u3002\u30af\u30fc\u30dd\u30f3\u7b49\u306b\u3088\u308b\u5024\u5f15\u304d Fake\u89b3\u5bdf\u6570\u5024 0\u301c0; \u89b3\u5bdf\u5024 '0'\u3002",
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 0
                    },
                    "tax": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "title": "\u7a0e\u984d",
                        "description": "\u53d7\u6ce8\u5168\u4f53\u306e\u7a0e\u984d\u5408\u8a08\uff08\u975e\u63a8\u5968\uff09\u3002\u660e\u7d30\u3054\u3068\u306e\u7a0e\u984d\u96c6\u8a08\u3068\u5dee\u7570\u304c\u751f\u3058\u308b\u5834\u5408\u304c\u3042\u308b\u305f\u3081\u3001\u6b63\u78ba\u306a\u7a0e\u984d\u306fOrderItem\u660e\u7d30\u3054\u3068\u306etax\u3092\u96c6\u8a08\u3059\u3079\u304d Fake\u89b3\u5bdf\u6570\u5024 1100\u301c1100; \u89b3\u5bdf\u5024 '1100'\u3002",
                        "example": 1100,
                        "minimum": 0,
                        "maximum": 999999999
                    },
                    "total": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "title": "\u53d7\u6ce8\u5408\u8a08",
                        "description": "\u53d7\u6ce8\u5408\u8a08\u91d1\u984d\u3002\u8a08\u7b97\u5f0f: subtotal(\u5546\u54c1\u7a0e\u8fbc\u5408\u8a08) + deliveryFeeTotal(\u9001\u6599) + charge(\u624b\u6570\u6599) - discount(\u5024\u5f15\u304d)\u3002\u30ab\u30fc\u30c8\u306etotalPrice\u3068\u306f\u5225\u30d7\u30ed\u30d1\u30c6\u30a3 Fake\u89b3\u5bdf\u6570\u5024 12700\u301c12700; \u89b3\u5bdf\u5024 '12700'\u3002",
                        "example": 12700,
                        "minimum": 0,
                        "maximum": 999999999
                    },
                    "paymentTotal": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "title": "\u652f\u6255\u5408\u8a08",
                        "description": "\u5b9f\u969b\u306e\u652f\u6255\u91d1\u984d\u3002\u521d\u671f\u5024\u306ftotal\u3068\u540c\u5024\u3067\u3001PointProcessor\u304c\u30dd\u30a4\u30f3\u30c8\u5024\u5f15\u304d\u306eOrderItem\uff08type=POINT_DISCOUNT\u3001\u4e0d\u8ab2\u7a0e\uff09\u3092\u8ffd\u52a0\u5f8c\u306bPurchaseFlow.calculateTotal()\u3067\u518d\u8a08\u7b97\u3055\u308c\u308b\u3002\u8a08\u7b97\u5f0f: total - (\u5229\u7528\u30dd\u30a4\u30f3\u30c8 x pointConversionRate) Fake\u89b3\u5bdf\u6570\u5024 12700\u301c12700; \u89b3\u5bdf\u5024 '12700'\u3002",
                        "example": 12700,
                        "minimum": 0,
                        "maximum": 999999999
                    },
                    "addPoint": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "title": "\u4ed8\u4e0e\u30dd\u30a4\u30f3\u30c8",
                        "description": "\u6ce8\u6587\u306b\u3088\u308a\u4ed8\u4e0e\u3055\u308c\u308b\u30dd\u30a4\u30f3\u30c8\u6570\u3002\u5546\u54c1\u5358\u4fa1(\u7a0e\u629c) x pointRate x \u6570\u91cf\u3067\u660e\u7d30\u3054\u3068\u306b\u8a08\u7b97\u3057\u5408\u7b97\u3002\u5229\u7528\u30dd\u30a4\u30f3\u30c8\u5206\u3092\u63a7\u9664\u3002\u767a\u9001\u6e08\u307f(DELIVERED)\u9077\u79fb\u6642\u306b\u4f1a\u54e1\u306epoint\u306b\u52a0\u7b97 Fake\u89b3\u5bdf\u6570\u5024 0\u301c127; \u89b3\u5bdf\u5024 '127', '0'\u3002",
                        "example": 127,
                        "minimum": 0,
                        "maximum": 2147483647
                    },
                    "itemCount": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 10000,
                        "title": "\u660e\u7d30\u4ef6\u6570",
                        "description": "/admin/order/create \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8fd4\u3059\u660e\u7d30\u4ef6\u6570\u3002\u4e00\u89a7\u30fb\u96c6\u8a08\u30fb\u51e6\u7406\u7d50\u679c\u306e\u898f\u6a21\u3092\u8868\u3059\u975e\u8ca0\u6574\u6570\u3002",
                        "example": 1
                    },
                    "orderStatus": {
                        "title": "\u53d7\u6ce8\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 Fake\u89b3\u5bdf\u6570\u5024 1\u301c1; \u89b3\u5bdf\u5024 '1'\u3002",
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "orderDate": {
                        "title": "\u6ce8\u6587\u65e5",
                        "description": "\u6ce8\u6587\u78ba\u5b9a\u65e5\u6642 Fake\u89b3\u5bdf\u6587\u5b57\u9577 19\u301c19; \u89b3\u5bdf\u5024 '2026-04-01 10:00:00'\u3002",
                        "type": [
                            "string",
                            "null"
                        ],
                        "example": "2026-04-01 10:00:00",
                        "pattern": "^\\d{4}-\\d{2}-\\d{2}([ T]\\d{2}:\\d{2}:\\d{2}([+-]\\d{2}:?\\d{2}|Z)?)?$"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "orderNo",
                    "customerId",
                    "paymentMethodId",
                    "subtotal",
                    "deliveryFeeTotal",
                    "charge",
                    "discount",
                    "tax",
                    "total",
                    "paymentTotal",
                    "addPoint",
                    "itemCount",
                    "orderStatus",
                    "orderDate"
                ]
            },
            "GET/admin/order/editResponse": {
                "title": "GET /admin/order/edit response",
                "description": "GET /admin/order/edit response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "form": {
                        "type": [
                            "object",
                            "array",
                            "null"
                        ],
                        "title": "\u5165\u529b\u30d5\u30a9\u30fc\u30e0",
                        "description": "Aura/WebForm\u7531\u6765\u306e\u30d5\u30a9\u30fc\u30e0\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3002\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5185\u90e8\u69cb\u9020\u306e\u305f\u3081schema\u3067\u306f\u5b58\u5728\u3068\u578b\u306e\u307f\u3092\u5951\u7d04\u3059\u308b\u3002",
                        "$comment": "Aura/WebForm\u7531\u6765\u306e\u4e0d\u900f\u660e\u30d5\u30a9\u30fc\u30e0\u8868\u73fe\u3002Resource\u5883\u754c\u3067\u306f\u30d5\u30a9\u30fc\u30e0\u306e\u5b58\u5728\u3068\u30b3\u30f3\u30c6\u30ad\u30b9\u30c8\u3060\u3051\u3092\u5951\u7d04\u3057\u3001\u5185\u90e8\u69cb\u9020\u306f\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5883\u754c\u306b\u59d4\u306d\u308b\u305f\u3081\u8ffd\u52a0\u30ad\u30fc\u5236\u7d04\u3092\u7f6e\u304b\u306a\u3044\u3002"
                    },
                    "order": {
                        "type": [
                            "array",
                            "null",
                            "object"
                        ],
                        "title": "\u6ce8\u6587\u8a73\u7d30",
                        "description": "/admin/order/edit \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u6ce8\u6587\u8a73\u7d30\u3002\u914d\u5217\u8981\u7d20\u306fALPS\u610f\u5473\u3068Fake\u89b3\u5bdf\u306b\u57fa\u3065\u304d\u3001\u56fa\u5b9a\u3067\u304d\u306a\u3044\u52d5\u7684\u5217\u306f\u4f8b\u5916\u7406\u7531\u3092\u53f0\u5e33\u5316\u3059\u308b\u3002",
                        "items": {
                            "type": "string",
                            "title": "\u6ce8\u6587",
                            "minLength": 0,
                            "maxLength": 255,
                            "description": "/admin/order/edit \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u6ce8\u6587\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `order` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002"
                        },
                        "minItems": 0,
                        "$comment": "\u5358\u4e00\u8a73\u7d30\u753b\u9762\u3067\u306f\u672a\u9078\u629e/\u521d\u671f\u8868\u793a\u306b\u7a7a\u914d\u5217\u3001\u53d6\u5f97\u6e08\u307f\u72b6\u614b\u306bobject\u304c\u73fe\u308c\u308b\u3002\u4e0d\u900f\u660e\u306a\u8a73\u7d30\u69cb\u9020\u306f\u65e2\u77e5property\u3092\u512a\u5148\u3057\u3001\u8ffd\u52a0\u30ad\u30fc\u306f\u4e92\u63db\u5883\u754c\u3068\u3057\u3066\u8a31\u5bb9\u3059\u308b\u3002"
                    },
                    "items": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u660e\u7d30\u4e00\u89a7",
                        "description": "/admin/order/edit \u306e\u89aa\u30aa\u30d6\u30b8\u30a7\u30af\u30c8 `` \u306b\u542b\u307e\u308c\u308b\u660e\u7d30\u914d\u5217\u3002\u5546\u54c1\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u306e\u6587\u8108\u3067\u89e3\u91c8\u3059\u308b\u3002",
                        "items": {
                            "type": [
                                "object",
                                "null"
                            ],
                            "title": "\u660e\u7d30",
                            "description": "/admin/order/edit \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u660e\u7d30\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `items` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002",
                            "properties": {
                                "productName": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 128,
                                    "title": "\u5546\u54c1\u540d",
                                    "description": "\u5546\u54c1\u306e\u8868\u793a\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 6\u301c17\u3002",
                                    "example": "\u30b5\u30f3\u30d7\u30eb\u5546\u54c1 A"
                                },
                                "productCode": {
                                    "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                                    "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 \u5546\u54c1\u3092\u8b58\u5225\u3059\u308bSKU\u3002Fake corpus\u3067\u306fASCII\u82f1\u6570\u30fb\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3067\u3001\u53d7\u6ce8\u660e\u7d30/\u30ab\u30fc\u30c8\u660e\u7d30\u306e\u7d50\u5408\u30ad\u30fc\u306b\u306a\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c26\u3002",
                                    "type": "string",
                                    "minLength": 0,
                                    "maxLength": 64,
                                    "example": "sample-001"
                                },
                                "quantity": {
                                    "title": "\u6570\u91cf",
                                    "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 Fake\u89b3\u5bdf\u6570\u5024 1\u301c3; \u89b3\u5bdf\u5024 '1', '2', '3'\u3002",
                                    "type": "integer",
                                    "minimum": 1,
                                    "maximum": 999,
                                    "example": 1
                                },
                                "unitPrice": {
                                    "title": "\u5358\u4fa1\uff08\u8868\u793a/\u8a08\u7b97\u7528\uff09",
                                    "description": "\u660e\u7d301\u4ef6\u3042\u305f\u308a\u306e\u5358\u4fa1\u3002\u53d7\u6ce8/\u30ab\u30fc\u30c8\u660e\u7d30\u30fb\u304a\u6c17\u306b\u5165\u308a\u30b9\u30ca\u30c3\u30d7\u30b7\u30e7\u30c3\u30c8\u3067\u306f\u8ffd\u52a0\u6642\u70b9\u306e price02 \u3092\u30b9\u30ca\u30c3\u30d7\u30b7\u30e7\u30c3\u30c8\u3057\u3066\u4fdd\u6301\u3059\u308b\uff08\u5f8c\u306e\u5024\u5f15\u304d\u3084\u30de\u30b9\u30bf\u6539\u5b9a\u306b\u5f71\u97ff\u3055\u308c\u306a\u3044\uff09\u3002BeMart \u5074\u3067\u306f `int` \u5186\u6574\u6570 Fake\u89b3\u5bdf\u6570\u5024 1200\u301c9800; \u89b3\u5bdf\u5024 '1200', '9800'\u3002",
                                    "type": "integer",
                                    "minimum": 0,
                                    "maximum": 999999999,
                                    "example": 1200
                                }
                            },
                            "additionalProperties": false,
                            "$comment": "\u914d\u5217\u8981\u7d20\u306fFake/Resource\u3067\u89b3\u5bdf\u3055\u308c\u305f\u65e2\u77e5property\u306b\u56fa\u5b9a\u3059\u308b\u3002\u65b0\u3057\u3044\u5217\u304c\u5fc5\u8981\u306b\u306a\u3063\u305f\u5834\u5408\u306fSemantic-Ex\u89b3\u5bdf\u306b\u8ffd\u52a0\u3057\u3066schema\u3092\u66f4\u65b0\u3059\u308b\u3002"
                        },
                        "minItems": 0
                    },
                    "orderNo": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 64,
                        "title": "\u6ce8\u6587\u756a\u53f7",
                        "description": "\u9867\u5ba2\u5411\u3051\u306e\u6ce8\u6587\u756a\u53f7\u3002\u30d5\u30a9\u30fc\u30de\u30c3\u30c8\u306f\u30ab\u30b9\u30bf\u30de\u30a4\u30ba\u53ef\u80fd Fake\u89b3\u5bdf\u6587\u5b57\u9577 32\u301c32; \u89b3\u5bdf\u5024 'past0000000000000000000000000001'\u3002",
                        "example": "past0000000000000000000000000001"
                    },
                    "csrfToken": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u53d7\u6ce8\u767b\u9332/\u7de8\u96c6\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u7528\u306eCSRF\u30c8\u30fc\u30af\u30f3\u3002Resource body\u304b\u3089Twig hidden input\u3078\u6e21\u3055\u308c\u308b\u3002",
                        "minLength": 0,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]*$",
                        "$comment": "CSRF\u5024\u306fRay.Csrf CsrfToken\u5883\u754c\u306e\u8cac\u52d9\u3002GET body\u3067\u306f\u30d5\u30a9\u30fc\u30e0\u6587\u8108\u3092\u793a\u3059\u305f\u3081\u306bnull\u3092\u8a31\u5bb9\u3059\u308b\u3002"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "order",
                    "items",
                    "orderNo"
                ]
            },
            "GET/admin/order/export-orderResponse": {
                "title": "GET /admin/order/export-order response",
                "description": "GET /admin/order/export-order response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "rowCount": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 2147483647,
                        "title": "\u884c\u6570",
                        "description": "/admin/order/export-order \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8fd4\u3059\u884c\u6570\u3002\u4e00\u89a7\u30fb\u96c6\u8a08\u30fb\u51e6\u7406\u7d50\u679c\u306e\u898f\u6a21\u3092\u8868\u3059\u975e\u8ca0\u6574\u6570\u3002"
                    },
                    "csv": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 5000000,
                        "$comment": "CSV\u5217\u306e\u696d\u52d9\u59a5\u5f53\u6027\u306fCSV\u4e92\u63db\u30b5\u30fc\u30d3\u30b9\u3067\u691c\u67fb\u3059\u308b\u3002\u3053\u3053\u3067\u306fJSON\u5883\u754c\u4e0a\u306e\u6587\u5b57\u5217\u30b5\u30a4\u30ba\u3092\u5951\u7d04\u3059\u308b\u3002",
                        "title": "\u8f38\u9001\u30da\u30a4\u30ed\u30fc\u30c9",
                        "description": "CSV\u30a4\u30f3\u30dd\u30fc\u30c8/\u30a8\u30af\u30b9\u30dd\u30fc\u30c8\u672c\u6587\u3002\u5217\u69cb\u9020\u306e\u8a73\u7d30\u306fCSV\u4e92\u63db\u30b5\u30fc\u30d3\u30b9\u5883\u754c\u3067\u691c\u67fb\u3059\u308b\u3002"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "rowCount",
                    "csv"
                ]
            },
            "GET/admin/order/export-order-pdfResponse": {
                "title": "GET /admin/order/export-order-pdf response",
                "description": "GET /admin/order/export-order-pdf response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "message": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "CSV\u30e1\u30c3\u30bb\u30fc\u30b8",
                        "description": "/admin/order/export-order-pdf \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u51e6\u7406\u7d50\u679c\u30e1\u30c3\u30bb\u30fc\u30b8\u3002\u6ce8\u6587\u6642\u304a\u554f\u3044\u5408\u308f\u305b\u6b04\u3067\u306f\u306a\u304f\u3001\u753b\u9762\u9077\u79fb\u3084\u5b8c\u4e86\u8868\u793a\u306e\u305f\u3081\u306e\u901a\u77e5\u6587\u3002",
                        "example": "\u914d\u9001\u306f\u5e73\u65e5\u5e0c\u671b\u3067\u3059\u3002"
                    },
                    "orderNo": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 64,
                        "title": "\u6ce8\u6587\u756a\u53f7",
                        "description": "\u9867\u5ba2\u5411\u3051\u306e\u6ce8\u6587\u756a\u53f7\u3002\u30d5\u30a9\u30fc\u30de\u30c3\u30c8\u306f\u30ab\u30b9\u30bf\u30de\u30a4\u30ba\u53ef\u80fd Fake\u89b3\u5bdf\u6587\u5b57\u9577 32\u301c32; \u89b3\u5bdf\u5024 'past0000000000000000000000000001'\u3002",
                        "example": "past0000000000000000000000000001"
                    },
                    "orderNos": {
                        "type": "array",
                        "title": "\u6ce8\u6587\u756a\u53f7\u4e00\u89a7",
                        "description": "/admin/order/export-order-pdf \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u6ce8\u6587\u756a\u53f7\u4e00\u89a7\u3002ALPS\u3001Fake\u89b3\u5bdf\u3001Resource\u5883\u754c\u306e\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305f\u696d\u52d9\u5951\u7d04\u3002",
                        "items": {
                            "type": "string",
                            "title": "\u6ce8\u6587\u756a\u53f7",
                            "minLength": 1,
                            "maxLength": 64,
                            "pattern": "^[A-Za-z0-9._:-]+$",
                            "description": "/admin/order/export-order-pdf \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308bCSV\u884c\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `orderNos` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002"
                        },
                        "minItems": 0
                    },
                    "pdf": {
                        "type": "string",
                        "minLength": 0,
                        "maxLength": 5000000,
                        "$comment": "PDF\u30d0\u30a4\u30ca\u30ea\u306fResource\u3067UTF-8\u6b63\u898f\u5316\u3057\u3066\u304b\u3089JSON Schema\u691c\u67fb\u3059\u308b\u3002PDF\u5185\u90e8\u69cb\u9020\u306fOrderPdfCompatibility\u5883\u754c\u306e\u8cac\u52d9\u3002",
                        "title": "\u8f38\u9001\u30da\u30a4\u30ed\u30fc\u30c9",
                        "description": "PDF\u30d0\u30a4\u30ca\u30ea\u3092JSON\u691c\u67fb\u53ef\u80fd\u306aUTF-8\u6587\u5b57\u5217\u3078\u6b63\u898f\u5316\u3057\u305f\u8868\u73fe\u3002\u5185\u5bb9\u81ea\u4f53\u306ePDF\u69cb\u9020\u306f\u5225\u5883\u754c\u306e\u8cac\u52d9\u3002"
                    },
                    "size": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "title": "\u30da\u30a4\u30ed\u30fc\u30c9\u30b5\u30a4\u30ba",
                        "description": "/admin/order/export-order-pdf \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u904b\u3076\u30da\u30a4\u30ed\u30fc\u30c9\u30b5\u30a4\u30ba\u3002CSV/PDF/\u30ed\u30b0\u7b49\u306e\u5185\u90e8\u5f62\u5f0f\u306f\u5c02\u7528\u5883\u754c\u3067\u6271\u3044\u3001JSON Schema\u3067\u306f\u8f38\u9001\u4e0a\u306e\u578b\u3068\u30b5\u30a4\u30ba\u3092\u5951\u7d04\u3059\u308b\u3002",
                        "minimum": 0
                    },
                    "fileName": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 255,
                        "title": "\u30d5\u30a1\u30a4\u30eb\u540d",
                        "description": "\u5546\u54c1\u753b\u50cf\u306e\u30d5\u30a1\u30a4\u30eb\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 12\u301c15; \u89b3\u5bdf\u5024 'Mail/order.twig', 'Mail/entry.twig', 'sample-a.jpg', 'sample-b.jpg'\u3002",
                        "example": "Mail/order.twig"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "orderNo",
                    "orderNos",
                    "pdf",
                    "size",
                    "fileName"
                ]
            },
            "GET/admin/order/export-shippingResponse": {
                "title": "GET /admin/order/export-shipping response",
                "description": "GET /admin/order/export-shipping response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "rowCount": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 2147483647,
                        "title": "\u884c\u6570",
                        "description": "/admin/order/export-shipping \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8fd4\u3059\u884c\u6570\u3002\u4e00\u89a7\u30fb\u96c6\u8a08\u30fb\u51e6\u7406\u7d50\u679c\u306e\u898f\u6a21\u3092\u8868\u3059\u975e\u8ca0\u6574\u6570\u3002"
                    },
                    "csv": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 5000000,
                        "$comment": "CSV\u5217\u306e\u696d\u52d9\u59a5\u5f53\u6027\u306fCSV\u4e92\u63db\u30b5\u30fc\u30d3\u30b9\u3067\u691c\u67fb\u3059\u308b\u3002\u3053\u3053\u3067\u306fJSON\u5883\u754c\u4e0a\u306e\u6587\u5b57\u5217\u30b5\u30a4\u30ba\u3092\u5951\u7d04\u3059\u308b\u3002",
                        "title": "\u8f38\u9001\u30da\u30a4\u30ed\u30fc\u30c9",
                        "description": "CSV\u30a4\u30f3\u30dd\u30fc\u30c8/\u30a8\u30af\u30b9\u30dd\u30fc\u30c8\u672c\u6587\u3002\u5217\u69cb\u9020\u306e\u8a73\u7d30\u306fCSV\u4e92\u63db\u30b5\u30fc\u30d3\u30b9\u5883\u754c\u3067\u691c\u67fb\u3059\u308b\u3002"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "csrfToken",
                    "rowCount",
                    "csv"
                ]
            },
            "GET/admin/order/import-shippingResponse": {
                "title": "GET /admin/order/import-shipping response",
                "description": "GET /admin/order/import-shipping response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "csrfToken"
                ]
            },
            "POST/admin/order/import-shippingResponse": {
                "title": "POST /admin/order/import-shipping response",
                "description": "POST /admin/order/import-shipping response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "skipped": {
                        "type": [
                            "integer",
                            "boolean",
                            "null"
                        ],
                        "title": "\u30b9\u30ad\u30c3\u30d7\u4ef6\u6570",
                        "description": "CSV\u53d6\u8fbc\u3067\u696d\u52d9\u7684\u306b\u51e6\u7406\u5bfe\u8c61\u5916\u3068\u306a\u3063\u305f\u884c\u6570\u3002\u65e7\u5883\u754c\u3067\u306f\u771f\u507d\u5024\u3082\u8fd4\u308b\u305f\u3081\u4e92\u63db\u7684\u306b\u8a31\u5bb9\u3059\u308b\u3002",
                        "minimum": 0,
                        "example": 0,
                        "$comment": "CSV import response context\u3067\u306f skipped \u306fboolean\u3067\u306f\u306a\u304f\u4ef6\u6570\u3092\u8868\u3059\u3002\u65e7Fake/Resource\u5883\u754c\u306eboolean\u4e92\u63db\u3060\u3051\u6b8b\u3059\u3002"
                    },
                    "imported": {
                        "type": [
                            "integer",
                            "boolean",
                            "null"
                        ],
                        "title": "\u53d6\u8fbc\u4ef6\u6570",
                        "description": "/admin/order/import-shipping \u306e\u51e6\u7406\u72b6\u614b\u3092\u793a\u3059\u53d6\u8fbc\u4ef6\u6570\u3002\u753b\u9762\u8868\u793a\u3084\u51aa\u7b49\u51e6\u7406\u7d50\u679c\u306e\u5206\u5c90\u306b\u4f7f\u3046\u771f\u507d\u5024\u3002",
                        "minimum": 0
                    },
                    "message": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "CSV\u30e1\u30c3\u30bb\u30fc\u30b8",
                        "description": "/admin/order/import-shipping \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u51e6\u7406\u7d50\u679c\u30e1\u30c3\u30bb\u30fc\u30b8\u3002\u6ce8\u6587\u6642\u304a\u554f\u3044\u5408\u308f\u305b\u6b04\u3067\u306f\u306a\u304f\u3001\u753b\u9762\u9077\u79fb\u3084\u5b8c\u4e86\u8868\u793a\u306e\u305f\u3081\u306e\u901a\u77e5\u6587\u3002",
                        "example": "\u914d\u9001\u306f\u5e73\u65e5\u5e0c\u671b\u3067\u3059\u3002"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "\u3053\u306e\u30ec\u30b9\u30dd\u30f3\u30b9/\u64cd\u4f5c\u304c\u5bfe\u5fdc\u3059\u308bALPS\u9077\u79fbID\u3002\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u306e\u72b6\u614b\u9077\u79fb\u8ffd\u8de1\u306b\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "accepted": {
                        "type": [
                            "integer",
                            "boolean",
                            "null"
                        ],
                        "title": "\u53d7\u7406\u4ef6\u6570",
                        "description": "/admin/order/import-shipping \u306e\u51e6\u7406\u72b6\u614b\u3092\u793a\u3059\u53d7\u7406\u4ef6\u6570\u3002\u753b\u9762\u8868\u793a\u3084\u51aa\u7b49\u51e6\u7406\u7d50\u679c\u306e\u5206\u5c90\u306b\u4f7f\u3046\u771f\u507d\u5024\u3002",
                        "minimum": 0
                    },
                    "lineCount": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 2147483647,
                        "title": "CSV\u884c\u6570",
                        "description": "/admin/order/import-shipping \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8fd4\u3059CSV\u884c\u6570\u3002\u4e00\u89a7\u30fb\u96c6\u8a08\u30fb\u51e6\u7406\u7d50\u679c\u306e\u898f\u6a21\u3092\u8868\u3059\u975e\u8ca0\u6574\u6570\u3002"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "skipped",
                    "imported",
                    "transitionId",
                    "accepted",
                    "lineCount"
                ]
            },
            "GET/admin/order/mail-confirmResponse": {
                "title": "GET /admin/order/mail-confirm response",
                "description": "GET /admin/order/mail-confirm response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "orderNo": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 64,
                        "title": "\u6ce8\u6587\u756a\u53f7",
                        "description": "\u9867\u5ba2\u5411\u3051\u306e\u6ce8\u6587\u756a\u53f7\u3002\u30d5\u30a9\u30fc\u30de\u30c3\u30c8\u306f\u30ab\u30b9\u30bf\u30de\u30a4\u30ba\u53ef\u80fd Fake\u89b3\u5bdf\u6587\u5b57\u9577 32\u301c32; \u89b3\u5bdf\u5024 'past0000000000000000000000000001'\u3002",
                        "example": "past0000000000000000000000000001"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "orderNo",
                    "csrfToken"
                ]
            },
            "GET/admin/order/order-pdfResponse": {
                "title": "GET /admin/order/order-pdf response",
                "description": "GET /admin/order/order-pdf response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "form": {
                        "type": [
                            "object",
                            "array",
                            "null"
                        ],
                        "title": "\u5165\u529b\u30d5\u30a9\u30fc\u30e0",
                        "description": "Aura/WebForm\u7531\u6765\u306e\u30d5\u30a9\u30fc\u30e0\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3002\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5185\u90e8\u69cb\u9020\u306e\u305f\u3081schema\u3067\u306f\u5b58\u5728\u3068\u578b\u306e\u307f\u3092\u5951\u7d04\u3059\u308b\u3002",
                        "$comment": "Aura/WebForm\u7531\u6765\u306e\u4e0d\u900f\u660e\u30d5\u30a9\u30fc\u30e0\u8868\u73fe\u3002Resource\u5883\u754c\u3067\u306f\u30d5\u30a9\u30fc\u30e0\u306e\u5b58\u5728\u3068\u30b3\u30f3\u30c6\u30ad\u30b9\u30c8\u3060\u3051\u3092\u5951\u7d04\u3057\u3001\u5185\u90e8\u69cb\u9020\u306f\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5883\u754c\u306b\u59d4\u306d\u308b\u305f\u3081\u8ffd\u52a0\u30ad\u30fc\u5236\u7d04\u3092\u7f6e\u304b\u306a\u3044\u3002"
                    },
                    "orderNo": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 64,
                        "title": "\u6ce8\u6587\u756a\u53f7",
                        "description": "\u9867\u5ba2\u5411\u3051\u306e\u6ce8\u6587\u756a\u53f7\u3002\u30d5\u30a9\u30fc\u30de\u30c3\u30c8\u306f\u30ab\u30b9\u30bf\u30de\u30a4\u30ba\u53ef\u80fd Fake\u89b3\u5bdf\u6587\u5b57\u9577 32\u301c32; \u89b3\u5bdf\u5024 'past0000000000000000000000000001'\u3002",
                        "example": "past0000000000000000000000000001"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "orderNo"
                ]
            },
            "GET/admin/order/send-mailResponse": {
                "title": "GET /admin/order/send-mail response",
                "description": "GET /admin/order/send-mail response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "form": {
                        "type": [
                            "object",
                            "array",
                            "null"
                        ],
                        "title": "\u5165\u529b\u30d5\u30a9\u30fc\u30e0",
                        "description": "Aura/WebForm\u7531\u6765\u306e\u30d5\u30a9\u30fc\u30e0\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3002\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5185\u90e8\u69cb\u9020\u306e\u305f\u3081schema\u3067\u306f\u5b58\u5728\u3068\u578b\u306e\u307f\u3092\u5951\u7d04\u3059\u308b\u3002",
                        "$comment": "Aura/WebForm\u7531\u6765\u306e\u4e0d\u900f\u660e\u30d5\u30a9\u30fc\u30e0\u8868\u73fe\u3002Resource\u5883\u754c\u3067\u306f\u30d5\u30a9\u30fc\u30e0\u306e\u5b58\u5728\u3068\u30b3\u30f3\u30c6\u30ad\u30b9\u30c8\u3060\u3051\u3092\u5951\u7d04\u3057\u3001\u5185\u90e8\u69cb\u9020\u306f\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5883\u754c\u306b\u59d4\u306d\u308b\u305f\u3081\u8ffd\u52a0\u30ad\u30fc\u5236\u7d04\u3092\u7f6e\u304b\u306a\u3044\u3002"
                    },
                    "orderNo": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 64,
                        "title": "\u6ce8\u6587\u756a\u53f7",
                        "description": "\u9867\u5ba2\u5411\u3051\u306e\u6ce8\u6587\u756a\u53f7\u3002\u30d5\u30a9\u30fc\u30de\u30c3\u30c8\u306f\u30ab\u30b9\u30bf\u30de\u30a4\u30ba\u53ef\u80fd Fake\u89b3\u5bdf\u6587\u5b57\u9577 32\u301c32; \u89b3\u5bdf\u5024 'past0000000000000000000000000001'\u3002",
                        "example": "past0000000000000000000000000001"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "orderNo",
                    "csrfToken"
                ]
            },
            "POST/admin/order/send-mailResponse": {
                "title": "POST /admin/order/send-mail response",
                "description": "POST /admin/order/send-mail response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "mailBody": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "title": "\u30e1\u30fc\u30eb\u672c\u6587",
                        "description": "\u9001\u4fe1\u6e08\u307f\u30e1\u30fc\u30eb\u306e\u30d7\u30ec\u30fc\u30f3\u30c6\u30ad\u30b9\u30c8\u672c\u6587 Fake\u89b3\u5bdf\u6587\u5b57\u9577 43\u301c43; \u89b3\u5bdf\u5024 '\u3053\u306e\u5ea6\u306f\u3054\u6ce8\u6587\u3044\u305f\u3060\u304d\u3042\u308a\u304c\u3068\u3046\u3054\u3056\u3044\u307e\u3059\u3002\\n\u5546\u54c1\u306e\u767a\u9001\u307e\u3067\u4eca\u3057\u3070\u3089\u304f\u304a\u5f85\u3061\u304f\u3060\u3055\u3044\u3002'\u3002",
                        "example": "\u3053\u306e\u5ea6\u306f\u3054\u6ce8\u6587\u3044\u305f\u3060\u304d\u3042\u308a\u304c\u3068\u3046\u3054\u3056\u3044\u307e\u3059\u3002\n\u5546\u54c1\u306e\u767a\u9001\u307e\u3067\u4eca\u3057\u3070\u3089\u304f\u304a\u5f85\u3061\u304f\u3060\u3055\u3044\u3002"
                    },
                    "message": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u6ce8\u6587\u30e1\u30c3\u30bb\u30fc\u30b8",
                        "description": "/admin/order/send-mail \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u51e6\u7406\u7d50\u679c\u30e1\u30c3\u30bb\u30fc\u30b8\u3002\u6ce8\u6587\u6642\u304a\u554f\u3044\u5408\u308f\u305b\u6b04\u3067\u306f\u306a\u304f\u3001\u753b\u9762\u9077\u79fb\u3084\u5b8c\u4e86\u8868\u793a\u306e\u305f\u3081\u306e\u901a\u77e5\u6587\u3002",
                        "example": "\u914d\u9001\u306f\u5e73\u65e5\u5e0c\u671b\u3067\u3059\u3002"
                    },
                    "sendDate": {
                        "title": "\u9001\u4fe1\u65e5\u6642",
                        "description": "\u30e1\u30fc\u30eb\u306e\u9001\u4fe1\u65e5\u6642 Fake\u89b3\u5bdf\u6587\u5b57\u9577 19\u301c19; \u89b3\u5bdf\u5024 '2026-04-01 10:05:00'\u3002",
                        "type": "string",
                        "example": "2026-04-01 10:05:00",
                        "$comment": "\u672a\u5165\u91d1\u30fb\u672a\u767a\u9001\u30fb\u672a\u516c\u958b\u306a\u3069\u672a\u78ba\u5b9a\u65e5\u6642\u306fEC-CUBE\u5883\u754c\u3067\u7a7a\u6587\u5b57\u3068\u3057\u3066\u73fe\u308c\u308b\u305f\u3081\u3001\u65e5\u4ed8/\u65e5\u6642\u6587\u5b57\u5217\u306b\u52a0\u3048\u3066\u7a7a\u6587\u5b57\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "pattern": "^$|\\d{4}-\\d{2}-\\d{2}([ T]\\d{2}:\\d{2}:\\d{2}([+-]\\d{2}:?\\d{2}|Z)?)?$"
                    },
                    "orderNo": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 64,
                        "title": "\u6ce8\u6587\u756a\u53f7",
                        "description": "\u9867\u5ba2\u5411\u3051\u306e\u6ce8\u6587\u756a\u53f7\u3002\u30d5\u30a9\u30fc\u30de\u30c3\u30c8\u306f\u30ab\u30b9\u30bf\u30de\u30a4\u30ba\u53ef\u80fd Fake\u89b3\u5bdf\u6587\u5b57\u9577 32\u301c32; \u89b3\u5bdf\u5024 'past0000000000000000000000000001'\u3002",
                        "example": "past0000000000000000000000000001"
                    },
                    "mailSubject": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u30e1\u30fc\u30eb\u4ef6\u540d",
                        "description": "\u30e1\u30fc\u30eb\u306e\u4ef6\u540d\u3002\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u5909\u6570\u3092\u542b\u3080\u5834\u5408\u3042\u308a Fake\u89b3\u5bdf\u6587\u5b57\u9577 13\u301c13; \u89b3\u5bdf\u5024 '\u3054\u6ce8\u6587\u3042\u308a\u304c\u3068\u3046\u3054\u3056\u3044\u307e\u3059'\u3002",
                        "example": "\u3054\u6ce8\u6587\u3042\u308a\u304c\u3068\u3046\u3054\u3056\u3044\u307e\u3059"
                    },
                    "customerId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u4f1a\u54e1ID",
                        "description": "dtb_customer.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e Entity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\uff08\u30de\u30b9\u30a2\u30b5\u30a4\u30f3\u30e1\u30f3\u30c8\u9632\u6b62\u306e\u305f\u3081\u3001Session/AuthZ \u7d4c\u7531\u3067\u8aad\u307f\u51fa\u3057\u3001\u30ea\u30af\u30a8\u30b9\u30c8\u672c\u6587\u304b\u3089\u306f\u53d7\u3051\u53d6\u3089\u306a\u3044\uff09\u3002Favorite / Cart / Order \u306e\u6240\u6709\u8005\u30ad\u30fc\u3068\u3057\u3066\u6a2a\u65ad\u4f7f\u7528 Fake\u89b3\u5bdf\u6587\u5b57\u9577 12\u301c32; \u89b3\u5bdf\u5024 'customer-001', '0123456789abcdef0123456789abcdef', 'customer-002', 'favorite-list-customer', 'favorite-html-customer', 'fedcba9876543210fedcba9876543210', 'aaaaaaaa00000000bbbbbbbb11111111', '10000000aaaa1111bbbb2222cccc3333'\u3002",
                        "example": "customer-001",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "mailBody",
                    "sendDate",
                    "orderNo",
                    "mailSubject",
                    "customerId"
                ]
            },
            "GET/admin/order/shipping-addressResponse": {
                "title": "GET /admin/order/shipping-address response",
                "description": "GET /admin/order/shipping-address response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "form": {
                        "type": [
                            "object",
                            "array",
                            "null"
                        ],
                        "title": "\u5165\u529b\u30d5\u30a9\u30fc\u30e0",
                        "description": "Aura/WebForm\u7531\u6765\u306e\u30d5\u30a9\u30fc\u30e0\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3002\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5185\u90e8\u69cb\u9020\u306e\u305f\u3081schema\u3067\u306f\u5b58\u5728\u3068\u578b\u306e\u307f\u3092\u5951\u7d04\u3059\u308b\u3002",
                        "$comment": "Aura/WebForm\u7531\u6765\u306e\u4e0d\u900f\u660e\u30d5\u30a9\u30fc\u30e0\u8868\u73fe\u3002Resource\u5883\u754c\u3067\u306f\u30d5\u30a9\u30fc\u30e0\u306e\u5b58\u5728\u3068\u30b3\u30f3\u30c6\u30ad\u30b9\u30c8\u3060\u3051\u3092\u5951\u7d04\u3057\u3001\u5185\u90e8\u69cb\u9020\u306f\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5883\u754c\u306b\u59d4\u306d\u308b\u305f\u3081\u8ffd\u52a0\u30ad\u30fc\u5236\u7d04\u3092\u7f6e\u304b\u306a\u3044\u3002"
                    },
                    "orderNo": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 64,
                        "title": "\u6ce8\u6587\u756a\u53f7",
                        "description": "\u9867\u5ba2\u5411\u3051\u306e\u6ce8\u6587\u756a\u53f7\u3002\u30d5\u30a9\u30fc\u30de\u30c3\u30c8\u306f\u30ab\u30b9\u30bf\u30de\u30a4\u30ba\u53ef\u80fd Fake\u89b3\u5bdf\u6587\u5b57\u9577 32\u301c32; \u89b3\u5bdf\u5024 'past0000000000000000000000000001'\u3002",
                        "example": "past0000000000000000000000000001"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "orderNo",
                    "csrfToken"
                ]
            },
            "POST/admin/order/shipping-addressResponse": {
                "title": "POST /admin/order/shipping-address response",
                "description": "POST /admin/order/shipping-address response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "message": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u6ce8\u6587\u30e1\u30c3\u30bb\u30fc\u30b8",
                        "description": "/admin/order/shipping-address \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u51e6\u7406\u7d50\u679c\u30e1\u30c3\u30bb\u30fc\u30b8\u3002\u6ce8\u6587\u6642\u304a\u554f\u3044\u5408\u308f\u305b\u6b04\u3067\u306f\u306a\u304f\u3001\u753b\u9762\u9077\u79fb\u3084\u5b8c\u4e86\u8868\u793a\u306e\u305f\u3081\u306e\u901a\u77e5\u6587\u3002",
                        "example": "\u914d\u9001\u306f\u5e73\u65e5\u5e0c\u671b\u3067\u3059\u3002"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape."
            },
            "PUT/admin/order/shipping-addressResponse": {
                "title": "PUT /admin/order/shipping-address response",
                "description": "PUT /admin/order/shipping-address response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "name01": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 80,
                        "title": "\u59d3",
                        "description": "\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u30fb\u304a\u554f\u3044\u5408\u308f\u305b\u3067\u5171\u901a\u4f7f\u7528\u3055\u308c\u308b\u59d3 Fake\u89b3\u5bdf\u6587\u5b57\u9577 2\u301c2; \u89b3\u5bdf\u5024 '\u9234\u6728', '\u5c71\u7530', '\u4f50\u85e4', '\u9ad8\u6a4b', '\u9000\u4f1a'\u3002",
                        "example": "\u9234\u6728"
                    },
                    "addr02": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u756a\u5730\u30fb\u5efa\u7269\u540d",
                        "description": "\u756a\u5730\u30fb\u30d3\u30eb\u540d\u30fb\u90e8\u5c4b\u756a\u53f7\u7b49\u306e\u8a73\u7d30\u4f4f\u6240 Fake\u89b3\u5bdf\u6587\u5b57\u9577 5\u301c8; \u89b3\u5bdf\u5024 '\u795e\u5bae\u524d1-1-1', '\u4e38\u306e\u51852-2-2', '\u6885\u75301-1-1', '1-2-3'; null 18/33\u3002",
                        "example": "\u795e\u5bae\u524d1-1-1"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u6709\u7121\u3092\u3069\u3061\u3089\u3082\u53d7\u3051\u5165\u308c\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 7\u301c8; \u89b3\u5bdf\u5024 '1500001', '1000005', '5300001', '530-0001'; null 18/33\u3002",
                        "type": [
                            "string",
                            "null"
                        ],
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770c",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u90fd\u9053\u5e9c\u770cID\u3002\u4f4f\u6240\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u72b6\u614b\u3067\u306f0\u3001\u78ba\u5b9a\u4f4f\u6240\u3067\u306f1\u301c47\u3092\u4f7f\u3046\u3002 Fake\u89b3\u5bdf\u6570\u5024 13\u301c27; \u89b3\u5bdf\u5024 '13', '27'; null 3/9\u3002",
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "addr01": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u5e02\u533a\u753a\u6751",
                        "description": "\u90fd\u9053\u5e9c\u770c\u3088\u308a\u4e0b\u4f4d\u306e\u5e02\u533a\u753a\u6751\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 3\u301c7; \u89b3\u5bdf\u5024 '\u6e0b\u8c37\u533a', '\u5343\u4ee3\u7530\u533a', '\u5927\u962a\u5e02\u5317\u533a', '\u5927\u962a\u5e02\u5317\u533a\u6885\u7530'; null 18/33\u3002",
                        "example": "\u6e0b\u8c37\u533a"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u3002Fake corpus\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3060\u304c\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3059\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c10; \u89b3\u5bdf\u5024 '0312345678', '0901234567', '0612345678'; null 18/33\u3002",
                        "type": [
                            "string",
                            "null"
                        ],
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "orderNo": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 64,
                        "title": "\u6ce8\u6587\u756a\u53f7",
                        "description": "\u9867\u5ba2\u5411\u3051\u306e\u6ce8\u6587\u756a\u53f7\u3002\u30d5\u30a9\u30fc\u30de\u30c3\u30c8\u306f\u30ab\u30b9\u30bf\u30de\u30a4\u30ba\u53ef\u80fd Fake\u89b3\u5bdf\u6587\u5b57\u9577 32\u301c32; \u89b3\u5bdf\u5024 'past0000000000000000000000000001'\u3002",
                        "example": "past0000000000000000000000000001"
                    },
                    "name02": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 80,
                        "title": "\u540d",
                        "description": "\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u30fb\u304a\u554f\u3044\u5408\u308f\u305b\u3067\u5171\u901a\u4f7f\u7528\u3055\u308c\u308b\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 1\u301c3; \u89b3\u5bdf\u5024 '\u30a2\u30ea\u30b9', '\u592a\u90ce', '\u6b21\u90ce', '\u82b1\u5b50', '\u4e09\u90ce', '\u6e08'\u3002",
                        "example": "\u30a2\u30ea\u30b9"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "name01",
                    "addr01",
                    "orderNo",
                    "name02"
                ]
            },
            "GET/admin/order/shipping-notify-mailResponse": {
                "title": "GET /admin/order/shipping-notify-mail response",
                "description": "\u7ba1\u7406\u753b\u9762\u3067\u51fa\u8377\u901a\u77e5\u30e1\u30fc\u30eb\u9001\u4fe1\u524d\u306b\u5bfe\u8c61\u6ce8\u6587\u3092\u78ba\u8a8d\u3059\u308b\u753b\u9762\u306eresponse body schema\u3002\u5916\u90e8\u30e1\u30fc\u30eb\u9001\u4fe1\u524d\u306e\u78ba\u8a8d\u5951\u7d04\u3068\u3057\u3066\u3001\u6ce8\u6587\u756a\u53f7\u30fb\u4f1a\u54e1ID\u30fb\u78ba\u8a8d\u30e1\u30c3\u30bb\u30fc\u30b8\u30fb\u9001\u4fe1\u5148\u30ea\u30f3\u30af\u3092\u660e\u793a\u3059\u308b\u3002",
                "type": "object",
                "properties": {
                    "orderNo": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 64,
                        "title": "\u51fa\u8377\u901a\u77e5\u5bfe\u8c61\u306e\u6ce8\u6587\u756a\u53f7",
                        "description": "\u51fa\u8377\u901a\u77e5\u30e1\u30fc\u30eb\u3092\u9001\u4fe1\u3059\u308b\u5bfe\u8c61\u6ce8\u6587\u306e\u9867\u5ba2\u5411\u3051\u6ce8\u6587\u756a\u53f7\u3002\u753b\u9762\u3067\u306f\u78ba\u8a8d\u8868\u793a\u3068POST hidden input\u306b\u4f7f\u7528\u3059\u308b\u3002",
                        "example": "past0000000000000000000000000001"
                    },
                    "customerId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u51fa\u8377\u901a\u77e5\u5bfe\u8c61\u306e\u4f1a\u54e1ID",
                        "description": "\u5bfe\u8c61\u6ce8\u6587\u306b\u7d10\u3065\u304f\u4f1a\u54e1ID\u3002\u30b2\u30b9\u30c8\u8cfc\u5165\u307e\u305f\u306f\u9000\u4f1a\u6e08\u307f\u5883\u754c\u3067\u306fnull\u306b\u306a\u308a\u3001\u753b\u9762\u3067\u306f\u30b2\u30b9\u30c8\u8cfc\u5165\u3068\u3057\u3066\u8868\u793a\u3059\u308b\u3002",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "example": "customer-001",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    },
                    "message": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 80,
                        "title": "\u51fa\u8377\u901a\u77e5\u30e1\u30fc\u30eb\u78ba\u8a8d\u30e1\u30c3\u30bb\u30fc\u30b8",
                        "description": "\u7ba1\u7406\u8005\u306b\u51fa\u8377\u901a\u77e5\u30e1\u30fc\u30eb\u9001\u4fe1\u306e\u78ba\u8a8d\u3092\u4fc3\u3059\u753b\u9762\u30e1\u30c3\u30bb\u30fc\u30b8\u3002\u6ce8\u6587\u6642\u306e\u304a\u554f\u3044\u5408\u308f\u305b\u672c\u6587\u3067\u306f\u306a\u3044\u3002",
                        "example": "\u51fa\u8377\u901a\u77e5\u30e1\u30fc\u30eb\u3092\u9001\u4fe1\u3057\u307e\u3059\u3002\u3088\u308d\u3057\u3044\u3067\u3059\u304b\uff1f"
                    },
                    "csrfToken": {
                        "type": "string",
                        "title": "\u51fa\u8377\u901a\u77e5\u30e1\u30fc\u30eb\u9001\u4fe1\u30d5\u30a9\u30fc\u30e0CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "POST /admin/order/shipping-notify-mail \u306ehidden input\u3067\u9001\u308bCSRF\u30c8\u30fc\u30af\u30f3\u3002",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "submitTo": {
                        "type": "object",
                        "title": "\u51fa\u8377\u901a\u77e5\u30e1\u30fc\u30eb\u9001\u4fe1\u30ea\u30f3\u30af",
                        "description": "\u78ba\u8a8d\u753b\u9762\u304b\u3089\u51fa\u8377\u901a\u77e5\u30e1\u30fc\u30eb\u9001\u4fe1Resource\u3078\u9077\u79fb\u3059\u308bALPS unsafe\u9077\u79fb\u3002",
                        "required": [
                            "method",
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "method": {
                                "type": "string",
                                "enum": [
                                    "POST"
                                ],
                                "title": "\u9001\u4fe1HTTP\u30e1\u30bd\u30c3\u30c9",
                                "description": "\u51fa\u8377\u901a\u77e5\u30e1\u30fc\u30eb\u9001\u4fe1\u306f\u526f\u4f5c\u7528\u3092\u6301\u3064\u305f\u3081POST\u306e\u307f\u8a31\u53ef\u3059\u308b\u3002"
                            },
                            "href": {
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "title": "\u51fa\u8377\u901a\u77e5\u30e1\u30fc\u30eb\u9001\u4fe1Resource URI",
                                "description": "POST\u5148\u306eBEAR Resource URI\u3002HTML\u3067\u306fcanonical path /admin/order/shipping-notify-mail \u306b\u5bfe\u5fdc\u3059\u308b\u3002",
                                "example": "page://self/admin/order/shipping-notify-mail"
                            }
                        }
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "\u51fa\u8377\u901a\u77e5\u30e1\u30fc\u30eb\u306e\u5b9f\u9001\u4fe1\u524d\u78ba\u8a8d\u753b\u9762\u3002\u5916\u90e8SMTP\u3067\u306f\u306a\u304fBeMart Mailer\u5883\u754c\u3078POST\u3059\u308b\u305f\u3081\u306eResource\u5951\u7d04\u3002",
                "required": [
                    "orderNo",
                    "customerId",
                    "message",
                    "csrfToken",
                    "submitTo"
                ]
            },
            "POST/admin/order/shipping-notify-mailResponse": {
                "title": "POST /admin/order/shipping-notify-mail response",
                "description": "POST /admin/order/shipping-notify-mail response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "trackingNumber": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u8377\u7269\u8ffd\u8de1\u756a\u53f7",
                        "description": "\u914d\u9001\u696d\u8005\u306e\u8377\u7269\u8ffd\u8de1\u756a\u53f7\u3002confirmUrl\u3068\u7d44\u307f\u5408\u308f\u305b\u3066\u8ffd\u8de1URL\u3092\u69cb\u6210",
                        "minLength": 0,
                        "maxLength": 128,
                        "$comment": "\u30ad\u30fc/\u8ffd\u8de1\u756a\u53f7\u306f\u7167\u5408\u7528\u306e\u4e0d\u900f\u660e\u6587\u5b57\u5217\u3067\u3001\u6570\u5024\u6f14\u7b97\u5bfe\u8c61\u3067\u306f\u306a\u3044\u3002"
                    },
                    "message": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u6ce8\u6587\u30e1\u30c3\u30bb\u30fc\u30b8",
                        "description": "/admin/order/shipping-notify-mail \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u51e6\u7406\u7d50\u679c\u30e1\u30c3\u30bb\u30fc\u30b8\u3002\u6ce8\u6587\u6642\u304a\u554f\u3044\u5408\u308f\u305b\u6b04\u3067\u306f\u306a\u304f\u3001\u753b\u9762\u9077\u79fb\u3084\u5b8c\u4e86\u8868\u793a\u306e\u305f\u3081\u306e\u901a\u77e5\u6587\u3002",
                        "example": "\u914d\u9001\u306f\u5e73\u65e5\u5e0c\u671b\u3067\u3059\u3002"
                    },
                    "orderNo": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 64,
                        "title": "\u6ce8\u6587\u756a\u53f7",
                        "description": "\u9867\u5ba2\u5411\u3051\u306e\u6ce8\u6587\u756a\u53f7\u3002\u30d5\u30a9\u30fc\u30de\u30c3\u30c8\u306f\u30ab\u30b9\u30bf\u30de\u30a4\u30ba\u53ef\u80fd Fake\u89b3\u5bdf\u6587\u5b57\u9577 32\u301c32; \u89b3\u5bdf\u5024 'past0000000000000000000000000001'\u3002",
                        "example": "past0000000000000000000000000001"
                    },
                    "customerId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u4f1a\u54e1ID",
                        "description": "dtb_customer.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e Entity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\uff08\u30de\u30b9\u30a2\u30b5\u30a4\u30f3\u30e1\u30f3\u30c8\u9632\u6b62\u306e\u305f\u3081\u3001Session/AuthZ \u7d4c\u7531\u3067\u8aad\u307f\u51fa\u3057\u3001\u30ea\u30af\u30a8\u30b9\u30c8\u672c\u6587\u304b\u3089\u306f\u53d7\u3051\u53d6\u3089\u306a\u3044\uff09\u3002Favorite / Cart / Order \u306e\u6240\u6709\u8005\u30ad\u30fc\u3068\u3057\u3066\u6a2a\u65ad\u4f7f\u7528 Fake\u89b3\u5bdf\u6587\u5b57\u9577 12\u301c32; \u89b3\u5bdf\u5024 'customer-001', '0123456789abcdef0123456789abcdef', 'customer-002', 'favorite-list-customer', 'favorite-html-customer', 'fedcba9876543210fedcba9876543210', 'aaaaaaaa00000000bbbbbbbb11111111', '10000000aaaa1111bbbb2222cccc3333'\u3002",
                        "example": "customer-001",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "trackingNumber",
                    "orderNo",
                    "customerId"
                ]
            },
            "PUT/admin/order/tracking-numberResponse": {
                "title": "PUT /admin/order/tracking-number response",
                "description": "PUT /admin/order/tracking-number response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "status": {
                        "type": "string",
                        "enum": [
                            "OK"
                        ],
                        "title": "Ajax\u51e6\u7406\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "\u7ba1\u7406\u753b\u9762\u306e\u4f1d\u7968\u756a\u53f7\u66f4\u65b0Ajax\u304c\u6210\u529f\u5224\u5b9a\u306b\u4f7f\u7528\u3059\u308b\u30b9\u30c6\u30fc\u30bf\u30b9\u3002"
                    },
                    "message": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u6ce8\u6587\u30e1\u30c3\u30bb\u30fc\u30b8",
                        "description": "/admin/order/tracking-number \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u51e6\u7406\u7d50\u679c\u30e1\u30c3\u30bb\u30fc\u30b8\u3002\u6ce8\u6587\u6642\u304a\u554f\u3044\u5408\u308f\u305b\u6b04\u3067\u306f\u306a\u304f\u3001\u753b\u9762\u9077\u79fb\u3084\u5b8c\u4e86\u8868\u793a\u306e\u305f\u3081\u306e\u901a\u77e5\u6587\u3002",
                        "example": "\u914d\u9001\u306f\u5e73\u65e5\u5e0c\u671b\u3067\u3059\u3002"
                    },
                    "trackingNumber": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u8377\u7269\u8ffd\u8de1\u756a\u53f7",
                        "description": "\u914d\u9001\u696d\u8005\u306e\u8377\u7269\u8ffd\u8de1\u756a\u53f7\u3002confirmUrl\u3068\u7d44\u307f\u5408\u308f\u305b\u3066\u8ffd\u8de1URL\u3092\u69cb\u6210",
                        "minLength": 0,
                        "maxLength": 128,
                        "$comment": "\u30ad\u30fc/\u8ffd\u8de1\u756a\u53f7\u306f\u7167\u5408\u7528\u306e\u4e0d\u900f\u660e\u6587\u5b57\u5217\u3067\u3001\u6570\u5024\u6f14\u7b97\u5bfe\u8c61\u3067\u306f\u306a\u3044\u3002"
                    },
                    "orderNo": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 64,
                        "title": "\u6ce8\u6587\u756a\u53f7",
                        "description": "\u9867\u5ba2\u5411\u3051\u306e\u6ce8\u6587\u756a\u53f7\u3002\u30d5\u30a9\u30fc\u30de\u30c3\u30c8\u306f\u30ab\u30b9\u30bf\u30de\u30a4\u30ba\u53ef\u80fd Fake\u89b3\u5bdf\u6587\u5b57\u9577 32\u301c32; \u89b3\u5bdf\u5024 'past0000000000000000000000000001'\u3002",
                        "example": "past0000000000000000000000000001"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "status",
                    "trackingNumber",
                    "orderNo"
                ]
            },
            "GET/admin/page/pageResponse": {
                "title": "GET /admin/page/page response",
                "description": "GET /admin/page/page response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "form": {
                        "type": [
                            "object",
                            "array",
                            "null"
                        ],
                        "title": "\u5165\u529b\u30d5\u30a9\u30fc\u30e0",
                        "description": "Aura/WebForm\u7531\u6765\u306e\u30d5\u30a9\u30fc\u30e0\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3002\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5185\u90e8\u69cb\u9020\u306e\u305f\u3081schema\u3067\u306f\u5b58\u5728\u3068\u578b\u306e\u307f\u3092\u5951\u7d04\u3059\u308b\u3002",
                        "$comment": "Aura/WebForm\u7531\u6765\u306e\u4e0d\u900f\u660e\u30d5\u30a9\u30fc\u30e0\u8868\u73fe\u3002Resource\u5883\u754c\u3067\u306f\u30d5\u30a9\u30fc\u30e0\u306e\u5b58\u5728\u3068\u30b3\u30f3\u30c6\u30ad\u30b9\u30c8\u3060\u3051\u3092\u5951\u7d04\u3057\u3001\u5185\u90e8\u69cb\u9020\u306f\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5883\u754c\u306b\u59d4\u306d\u308b\u305f\u3081\u8ffd\u52a0\u30ad\u30fc\u5236\u7d04\u3092\u7f6e\u304b\u306a\u3044\u3002"
                    },
                    "pageFileName": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u30d5\u30a1\u30a4\u30eb\u540d",
                        "description": "\u30da\u30fc\u30b8\u306e\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u30d5\u30a1\u30a4\u30eb\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 3\u301c7; \u89b3\u5bdf\u5024 'index', 'company', 'foo'\u3002",
                        "example": "index"
                    },
                    "pageUrl": {
                        "title": "\u30da\u30fc\u30b8URL",
                        "description": "\u30da\u30fc\u30b8\u306eURL\u30d1\u30b9\uff08Symfony\u30eb\u30fc\u30c8\u540d\u3002\u4f8b: homepage, product_list\uff09 Fake\u89b3\u5bdf\u6587\u5b57\u9577 3\u301c8; \u89b3\u5bdf\u5024 'homepage', 'company', 'foo'\u3002",
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "homepage"
                    },
                    "pageId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u30da\u30fc\u30b8ID",
                        "description": "dtb_page.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e PageEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f `pg-` \u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9\u4ed8\u304d\u306e\u82f1\u6570\u5b57\u3092\u751f\u6210\u3057\uff08\u30b7\u30fc\u30c9 `pg-homepage` \u3092\u542b\u3080\uff09\u3001SQL \u5b9f\u88c5\u306f dtb_page.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u975e\u6570\u5024 ID \u306f SqlPageStorage \u3067\u306f miss \u3068\u3057\u3066\u6271\u308f\u308c getById / put / remove \u306e\u3044\u305a\u308c\u3082 404 \u7d4c\u8def (AdminPageFetched / PageUpdated / PageDeleted) \u3092\u8e0f\u3080\u305f\u3081\u3001\u30b7\u30fc\u30c9\u30cf\u30f3\u30c9\u30eb `pg-homepage` \u3084 `nonexistent-zzz` \u306f Fake / SQL \u53cc\u65b9\u3067 404 \u304c\u540c\u5f62 Fake\u89b3\u5bdf\u6587\u5b57\u9577 6\u301c11; \u89b3\u5bdf\u5024 'pg-homepage', 'pg-company', 'pg-foo'\u3002",
                        "example": "pg-homepage",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    },
                    "pageName": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u30da\u30fc\u30b8\u540d",
                        "description": "\u7ba1\u7406\u753b\u9762\u3067\u306e\u30da\u30fc\u30b8\u8868\u793a\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 3\u301c6; \u89b3\u5bdf\u5024 '\u30db\u30fc\u30e0\u30da\u30fc\u30b8', '\u4f1a\u793e\u6848\u5185', 'Foo'\u3002",
                        "example": "\u30db\u30fc\u30e0\u30da\u30fc\u30b8"
                    },
                    "csrfToken": {
                        "title": "\u51e6\u7406\u8b58\u5225\u5b50",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u306e\u507d\u9020\u3092\u9632\u3050\u305f\u3081\u306b\u9001\u4fe1\u5143\u753b\u9762\u3067\u767a\u884c\u3055\u308c\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "pageEditType": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "title": "\u30da\u30fc\u30b8\u7de8\u96c6\u533a\u5206",
                        "description": "\u30da\u30fc\u30b8\u7de8\u96c6\u30ec\u30d9\u30eb\u30020=EDIT_TYPE_USER\uff08\u30e6\u30fc\u30b6\u30fc\u4f5c\u6210\u3001\u5b8c\u5168\u7de8\u96c6/\u524a\u9664\u53ef\uff09, 1=EDIT_TYPE_PREVIEW\uff08\u30d7\u30ec\u30d3\u30e5\u30fc\uff09, 2=EDIT_TYPE_DEFAULT\uff08\u30b7\u30b9\u30c6\u30e0\u30da\u30fc\u30b8\u3001\u69cb\u9020\u30ed\u30c3\u30af\u30fb\u524a\u9664\u4e0d\u53ef\uff09, 3=EDIT_TYPE_DEFAULT_CONFIRM\uff08\u5185\u5bb9\u7de8\u96c6\u53ef\u80fd\u306a\u30b7\u30b9\u30c6\u30e0\u30da\u30fc\u30b8\u3001\u5229\u7528\u898f\u7d04\u7b49\uff09\u3002editType>=2\u306f\u524a\u9664\u4e0d\u53ef Fake\u89b3\u5bdf\u6570\u5024 0\u301c2; \u89b3\u5bdf\u5024 '0', '2'\u3002",
                        "example": 0,
                        "minimum": 0
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "pageFileName",
                    "pageUrl",
                    "pageId",
                    "pageName",
                    "pageEditType"
                ]
            },
            "PUT/admin/page/pageResponse": {
                "title": "PUT /admin/page/page response",
                "description": "PUT /admin/page/page response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "pageFileName": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u30d5\u30a1\u30a4\u30eb\u540d",
                        "description": "\u30da\u30fc\u30b8\u306e\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u30d5\u30a1\u30a4\u30eb\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 3\u301c7; \u89b3\u5bdf\u5024 'index', 'company', 'foo'\u3002",
                        "example": "index"
                    },
                    "pageUrl": {
                        "title": "\u30da\u30fc\u30b8URL",
                        "description": "\u30da\u30fc\u30b8\u306eURL\u30d1\u30b9\uff08Symfony\u30eb\u30fc\u30c8\u540d\u3002\u4f8b: homepage, product_list\uff09 Fake\u89b3\u5bdf\u6587\u5b57\u9577 3\u301c8; \u89b3\u5bdf\u5024 'homepage', 'company', 'foo'\u3002",
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "homepage"
                    },
                    "pageId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u30da\u30fc\u30b8ID",
                        "description": "dtb_page.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e PageEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f `pg-` \u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9\u4ed8\u304d\u306e\u82f1\u6570\u5b57\u3092\u751f\u6210\u3057\uff08\u30b7\u30fc\u30c9 `pg-homepage` \u3092\u542b\u3080\uff09\u3001SQL \u5b9f\u88c5\u306f dtb_page.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u975e\u6570\u5024 ID \u306f SqlPageStorage \u3067\u306f miss \u3068\u3057\u3066\u6271\u308f\u308c getById / put / remove \u306e\u3044\u305a\u308c\u3082 404 \u7d4c\u8def (AdminPageFetched / PageUpdated / PageDeleted) \u3092\u8e0f\u3080\u305f\u3081\u3001\u30b7\u30fc\u30c9\u30cf\u30f3\u30c9\u30eb `pg-homepage` \u3084 `nonexistent-zzz` \u306f Fake / SQL \u53cc\u65b9\u3067 404 \u304c\u540c\u5f62 Fake\u89b3\u5bdf\u6587\u5b57\u9577 6\u301c11; \u89b3\u5bdf\u5024 'pg-homepage', 'pg-company', 'pg-foo'\u3002",
                        "example": "pg-homepage",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    },
                    "pageName": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u30da\u30fc\u30b8\u540d",
                        "description": "\u7ba1\u7406\u753b\u9762\u3067\u306e\u30da\u30fc\u30b8\u8868\u793a\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 3\u301c6; \u89b3\u5bdf\u5024 '\u30db\u30fc\u30e0\u30da\u30fc\u30b8', '\u4f1a\u793e\u6848\u5185', 'Foo'\u3002",
                        "example": "\u30db\u30fc\u30e0\u30da\u30fc\u30b8"
                    },
                    "pageEditType": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "title": "\u30da\u30fc\u30b8\u7de8\u96c6\u533a\u5206",
                        "description": "\u30da\u30fc\u30b8\u7de8\u96c6\u30ec\u30d9\u30eb\u30020=EDIT_TYPE_USER\uff08\u30e6\u30fc\u30b6\u30fc\u4f5c\u6210\u3001\u5b8c\u5168\u7de8\u96c6/\u524a\u9664\u53ef\uff09, 1=EDIT_TYPE_PREVIEW\uff08\u30d7\u30ec\u30d3\u30e5\u30fc\uff09, 2=EDIT_TYPE_DEFAULT\uff08\u30b7\u30b9\u30c6\u30e0\u30da\u30fc\u30b8\u3001\u69cb\u9020\u30ed\u30c3\u30af\u30fb\u524a\u9664\u4e0d\u53ef\uff09, 3=EDIT_TYPE_DEFAULT_CONFIRM\uff08\u5185\u5bb9\u7de8\u96c6\u53ef\u80fd\u306a\u30b7\u30b9\u30c6\u30e0\u30da\u30fc\u30b8\u3001\u5229\u7528\u898f\u7d04\u7b49\uff09\u3002editType>=2\u306f\u524a\u9664\u4e0d\u53ef Fake\u89b3\u5bdf\u6570\u5024 0\u301c2; \u89b3\u5bdf\u5024 '0', '2'\u3002",
                        "example": 0,
                        "minimum": 0
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "pageFileName",
                    "pageUrl",
                    "pageId",
                    "pageName",
                    "pageEditType"
                ]
            },
            "DELETE/admin/page/pageResponse": {
                "title": "DELETE /admin/page/page response",
                "description": "DELETE /admin/page/page response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "message": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u51e6\u7406\u30e1\u30c3\u30bb\u30fc\u30b8",
                        "description": "/admin/page/page \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u51e6\u7406\u7d50\u679c\u30e1\u30c3\u30bb\u30fc\u30b8\u3002\u6ce8\u6587\u6642\u304a\u554f\u3044\u5408\u308f\u305b\u6b04\u3067\u306f\u306a\u304f\u3001\u753b\u9762\u9077\u79fb\u3084\u5b8c\u4e86\u8868\u793a\u306e\u305f\u3081\u306e\u901a\u77e5\u6587\u3002",
                        "example": "\u914d\u9001\u306f\u5e73\u65e5\u5e0c\u671b\u3067\u3059\u3002"
                    },
                    "pageId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u30da\u30fc\u30b8ID",
                        "description": "dtb_page.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e PageEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f `pg-` \u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9\u4ed8\u304d\u306e\u82f1\u6570\u5b57\u3092\u751f\u6210\u3057\uff08\u30b7\u30fc\u30c9 `pg-homepage` \u3092\u542b\u3080\uff09\u3001SQL \u5b9f\u88c5\u306f dtb_page.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u975e\u6570\u5024 ID \u306f SqlPageStorage \u3067\u306f miss \u3068\u3057\u3066\u6271\u308f\u308c getById / put / remove \u306e\u3044\u305a\u308c\u3082 404 \u7d4c\u8def (AdminPageFetched / PageUpdated / PageDeleted) \u3092\u8e0f\u3080\u305f\u3081\u3001\u30b7\u30fc\u30c9\u30cf\u30f3\u30c9\u30eb `pg-homepage` \u3084 `nonexistent-zzz` \u306f Fake / SQL \u53cc\u65b9\u3067 404 \u304c\u540c\u5f62 Fake\u89b3\u5bdf\u6587\u5b57\u9577 6\u301c11; \u89b3\u5bdf\u5024 'pg-homepage', 'pg-company', 'pg-foo'\u3002",
                        "example": "pg-homepage",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "pageId"
                ]
            },
            "GET/admin/page/page-listResponse": {
                "title": "GET /admin/page/page-list response",
                "description": "GET /admin/page/page-list response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "count": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 2147483647,
                        "title": "\u4ef6\u6570",
                        "description": "/admin/page/page-list \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8fd4\u3059\u4ef6\u6570\u3002\u4e00\u89a7\u30fb\u96c6\u8a08\u30fb\u51e6\u7406\u7d50\u679c\u306e\u898f\u6a21\u3092\u8868\u3059\u975e\u8ca0\u6574\u6570\u3002"
                    },
                    "pages": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u30da\u30fc\u30b8\u4e00\u89a7",
                        "description": "/admin/page/page-list \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u30da\u30fc\u30b8\u4e00\u89a7\u3002\u914d\u5217\u8981\u7d20\u306fALPS\u610f\u5473\u3068Fake\u89b3\u5bdf\u306b\u57fa\u3065\u304d\u3001\u56fa\u5b9a\u3067\u304d\u306a\u3044\u52d5\u7684\u5217\u306f\u4f8b\u5916\u7406\u7531\u3092\u53f0\u5e33\u5316\u3059\u308b\u3002",
                        "items": {
                            "type": [
                                "object",
                                "null"
                            ],
                            "title": "\u30da\u30fc\u30b8",
                            "description": "/admin/page/page-list \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u30da\u30fc\u30b8\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `pages` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002",
                            "properties": {
                                "pageFileName": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 32,
                                    "title": "\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u30d5\u30a1\u30a4\u30eb\u540d",
                                    "description": "\u30da\u30fc\u30b8\u306e\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u30d5\u30a1\u30a4\u30eb\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 3\u301c7; \u89b3\u5bdf\u5024 'index', 'company', 'foo'\u3002",
                                    "example": "index"
                                },
                                "pageUrl": {
                                    "title": "\u30da\u30fc\u30b8URL",
                                    "description": "\u30da\u30fc\u30b8\u306eURL\u30d1\u30b9\uff08Symfony\u30eb\u30fc\u30c8\u540d\u3002\u4f8b: homepage, product_list\uff09 Fake\u89b3\u5bdf\u6587\u5b57\u9577 3\u301c8; \u89b3\u5bdf\u5024 'homepage', 'company', 'foo'\u3002",
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "format": "uri-reference",
                                    "minLength": 1,
                                    "maxLength": 2048,
                                    "example": "homepage"
                                },
                                "pageId": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "title": "\u30da\u30fc\u30b8ID",
                                    "description": "dtb_page.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e PageEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f `pg-` \u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9\u4ed8\u304d\u306e\u82f1\u6570\u5b57\u3092\u751f\u6210\u3057\uff08\u30b7\u30fc\u30c9 `pg-homepage` \u3092\u542b\u3080\uff09\u3001SQL \u5b9f\u88c5\u306f dtb_page.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u975e\u6570\u5024 ID \u306f SqlPageStorage \u3067\u306f miss \u3068\u3057\u3066\u6271\u308f\u308c getById / put / remove \u306e\u3044\u305a\u308c\u3082 404 \u7d4c\u8def (AdminPageFetched / PageUpdated / PageDeleted) \u3092\u8e0f\u3080\u305f\u3081\u3001\u30b7\u30fc\u30c9\u30cf\u30f3\u30c9\u30eb `pg-homepage` \u3084 `nonexistent-zzz` \u306f Fake / SQL \u53cc\u65b9\u3067 404 \u304c\u540c\u5f62 Fake\u89b3\u5bdf\u6587\u5b57\u9577 6\u301c11; \u89b3\u5bdf\u5024 'pg-homepage', 'pg-company', 'pg-foo'\u3002",
                                    "example": "pg-homepage",
                                    "minLength": 0,
                                    "maxLength": 128,
                                    "pattern": "^[A-Za-z0-9._:@/-]*$",
                                    "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                                },
                                "pageName": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 32,
                                    "title": "\u30da\u30fc\u30b8\u540d",
                                    "description": "\u7ba1\u7406\u753b\u9762\u3067\u306e\u30da\u30fc\u30b8\u8868\u793a\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 3\u301c6; \u89b3\u5bdf\u5024 '\u30db\u30fc\u30e0\u30da\u30fc\u30b8', '\u4f1a\u793e\u6848\u5185', 'Foo'\u3002",
                                    "example": "\u30db\u30fc\u30e0\u30da\u30fc\u30b8"
                                },
                                "pageEditType": {
                                    "type": [
                                        "integer",
                                        "null"
                                    ],
                                    "title": "\u30da\u30fc\u30b8\u7de8\u96c6\u533a\u5206",
                                    "description": "\u30da\u30fc\u30b8\u7de8\u96c6\u30ec\u30d9\u30eb\u30020=EDIT_TYPE_USER\uff08\u30e6\u30fc\u30b6\u30fc\u4f5c\u6210\u3001\u5b8c\u5168\u7de8\u96c6/\u524a\u9664\u53ef\uff09, 1=EDIT_TYPE_PREVIEW\uff08\u30d7\u30ec\u30d3\u30e5\u30fc\uff09, 2=EDIT_TYPE_DEFAULT\uff08\u30b7\u30b9\u30c6\u30e0\u30da\u30fc\u30b8\u3001\u69cb\u9020\u30ed\u30c3\u30af\u30fb\u524a\u9664\u4e0d\u53ef\uff09, 3=EDIT_TYPE_DEFAULT_CONFIRM\uff08\u5185\u5bb9\u7de8\u96c6\u53ef\u80fd\u306a\u30b7\u30b9\u30c6\u30e0\u30da\u30fc\u30b8\u3001\u5229\u7528\u898f\u7d04\u7b49\uff09\u3002editType>=2\u306f\u524a\u9664\u4e0d\u53ef Fake\u89b3\u5bdf\u6570\u5024 0\u301c2; \u89b3\u5bdf\u5024 '0', '2'\u3002",
                                    "example": 0,
                                    "minimum": 0
                                }
                            },
                            "additionalProperties": false,
                            "$comment": "\u914d\u5217\u8981\u7d20\u306fFake/Resource\u3067\u89b3\u5bdf\u3055\u308c\u305f\u65e2\u77e5property\u306b\u56fa\u5b9a\u3059\u308b\u3002\u65b0\u3057\u3044\u5217\u304c\u5fc5\u8981\u306b\u306a\u3063\u305f\u5834\u5408\u306fSemantic-Ex\u89b3\u5bdf\u306b\u8ffd\u52a0\u3057\u3066schema\u3092\u66f4\u65b0\u3059\u308b\u3002"
                        },
                        "minItems": 0
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u4e00\u89a7\u753b\u9762\u304b\u3089\u9001\u4fe1\u3059\u308b\u4f5c\u6210\u30fb\u524a\u9664\u30d5\u30a9\u30fc\u30e0\u7528\u306eCSRF\u30c8\u30fc\u30af\u30f3\u3002",
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]*$"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "count",
                    "pages",
                    "csrfToken"
                ]
            },
            "POST/admin/page/page-listResponse": {
                "title": "POST /admin/page/page-list response",
                "description": "POST /admin/page/page-list response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "pageFileName": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u30d5\u30a1\u30a4\u30eb\u540d",
                        "description": "\u30da\u30fc\u30b8\u306e\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u30d5\u30a1\u30a4\u30eb\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 3\u301c7; \u89b3\u5bdf\u5024 'index', 'company', 'foo'\u3002",
                        "example": "index"
                    },
                    "pageUrl": {
                        "title": "\u30da\u30fc\u30b8URL",
                        "description": "\u30da\u30fc\u30b8\u306eURL\u30d1\u30b9\uff08Symfony\u30eb\u30fc\u30c8\u540d\u3002\u4f8b: homepage, product_list\uff09 Fake\u89b3\u5bdf\u6587\u5b57\u9577 3\u301c8; \u89b3\u5bdf\u5024 'homepage', 'company', 'foo'\u3002",
                        "type": [
                            "string",
                            "null"
                        ],
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "homepage"
                    },
                    "pageId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u30da\u30fc\u30b8ID",
                        "description": "dtb_page.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e PageEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f `pg-` \u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9\u4ed8\u304d\u306e\u82f1\u6570\u5b57\u3092\u751f\u6210\u3057\uff08\u30b7\u30fc\u30c9 `pg-homepage` \u3092\u542b\u3080\uff09\u3001SQL \u5b9f\u88c5\u306f dtb_page.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u975e\u6570\u5024 ID \u306f SqlPageStorage \u3067\u306f miss \u3068\u3057\u3066\u6271\u308f\u308c getById / put / remove \u306e\u3044\u305a\u308c\u3082 404 \u7d4c\u8def (AdminPageFetched / PageUpdated / PageDeleted) \u3092\u8e0f\u3080\u305f\u3081\u3001\u30b7\u30fc\u30c9\u30cf\u30f3\u30c9\u30eb `pg-homepage` \u3084 `nonexistent-zzz` \u306f Fake / SQL \u53cc\u65b9\u3067 404 \u304c\u540c\u5f62 Fake\u89b3\u5bdf\u6587\u5b57\u9577 6\u301c11; \u89b3\u5bdf\u5024 'pg-homepage', 'pg-company', 'pg-foo'\u3002",
                        "example": "pg-homepage",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    },
                    "pageName": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u30da\u30fc\u30b8\u540d",
                        "description": "\u7ba1\u7406\u753b\u9762\u3067\u306e\u30da\u30fc\u30b8\u8868\u793a\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 3\u301c6; \u89b3\u5bdf\u5024 '\u30db\u30fc\u30e0\u30da\u30fc\u30b8', '\u4f1a\u793e\u6848\u5185', 'Foo'\u3002",
                        "example": "\u30db\u30fc\u30e0\u30da\u30fc\u30b8"
                    },
                    "pageEditType": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "title": "\u30da\u30fc\u30b8\u7de8\u96c6\u533a\u5206",
                        "description": "\u30da\u30fc\u30b8\u7de8\u96c6\u30ec\u30d9\u30eb\u30020=EDIT_TYPE_USER\uff08\u30e6\u30fc\u30b6\u30fc\u4f5c\u6210\u3001\u5b8c\u5168\u7de8\u96c6/\u524a\u9664\u53ef\uff09, 1=EDIT_TYPE_PREVIEW\uff08\u30d7\u30ec\u30d3\u30e5\u30fc\uff09, 2=EDIT_TYPE_DEFAULT\uff08\u30b7\u30b9\u30c6\u30e0\u30da\u30fc\u30b8\u3001\u69cb\u9020\u30ed\u30c3\u30af\u30fb\u524a\u9664\u4e0d\u53ef\uff09, 3=EDIT_TYPE_DEFAULT_CONFIRM\uff08\u5185\u5bb9\u7de8\u96c6\u53ef\u80fd\u306a\u30b7\u30b9\u30c6\u30e0\u30da\u30fc\u30b8\u3001\u5229\u7528\u898f\u7d04\u7b49\uff09\u3002editType>=2\u306f\u524a\u9664\u4e0d\u53ef Fake\u89b3\u5bdf\u6570\u5024 0\u301c2; \u89b3\u5bdf\u5024 '0', '2'\u3002",
                        "example": 0,
                        "minimum": 0
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "pageFileName",
                    "pageUrl",
                    "pageId",
                    "pageName",
                    "pageEditType"
                ]
            },
            "GET/admin/payment/paymentResponse": {
                "title": "GET /admin/payment/payment response",
                "description": "GET /admin/payment/payment response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "form": {
                        "type": [
                            "object",
                            "array",
                            "null"
                        ],
                        "title": "\u5165\u529b\u30d5\u30a9\u30fc\u30e0",
                        "description": "Aura/WebForm\u7531\u6765\u306e\u30d5\u30a9\u30fc\u30e0\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3002\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5185\u90e8\u69cb\u9020\u306e\u305f\u3081schema\u3067\u306f\u5b58\u5728\u3068\u578b\u306e\u307f\u3092\u5951\u7d04\u3059\u308b\u3002",
                        "$comment": "Aura/WebForm\u7531\u6765\u306e\u4e0d\u900f\u660e\u30d5\u30a9\u30fc\u30e0\u8868\u73fe\u3002Resource\u5883\u754c\u3067\u306f\u30d5\u30a9\u30fc\u30e0\u306e\u5b58\u5728\u3068\u30b3\u30f3\u30c6\u30ad\u30b9\u30c8\u3060\u3051\u3092\u5951\u7d04\u3057\u3001\u5185\u90e8\u69cb\u9020\u306f\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5883\u754c\u306b\u59d4\u306d\u308b\u305f\u3081\u8ffd\u52a0\u30ad\u30fc\u5236\u7d04\u3092\u7f6e\u304b\u306a\u3044\u3002"
                    },
                    "paymentId": {
                        "type": [
                            "string",
                            "integer",
                            "null"
                        ],
                        "title": "\u652f\u6255\u65b9\u6cd5ID",
                        "description": "dtb_payment.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e PaymentMethodAdminEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f 32\u6841hex \u3092\u751f\u6210\u3057\u3001SQL \u5b9f\u88c5\u306f dtb_payment.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u975e\u6570\u5024 ID \u306f SqlPaymentMethodAdminStorage \u3067\u306f miss \u3068\u3057\u3066\u6271\u308f\u308c getById / put / remove \u306e\u3044\u305a\u308c\u3082 404 \u7d4c\u8def (PaymentMethodAdminUpdated / PaymentMethodAdminDeleted) \u3092\u8e0f\u3080\u305f\u3081\u3001\u30b7\u30fc\u30c9\u30cf\u30f3\u30c9\u30eb `nonexistent-zzz` \u306f Fake / SQL \u53cc\u65b9\u3067 404 \u304c\u540c\u5f62\u3002categoryId / blockId / tagId \u3068\u540c\u3058 Fake\u2194SQL \u4e8c\u91cd\u6027 Fake\u89b3\u5bdf\u6587\u5b57\u9577 7\u301c10; Fake\u89b3\u5bdf\u6570\u5024 1\u301c9; \u89b3\u5bdf\u5024 '2', 'pay-cod', 'pay-credit', '1', '9'\u3002",
                        "example": 2,
                        "minLength": 0,
                        "maxLength": 128,
                        "$comment": "Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u305f\u3081\u3001\u3053\u306e\u5883\u754c\u3060\u3051mixedBoundaryId\u3068\u3057\u3066\u6271\u3046\u3002"
                    },
                    "payment": {
                        "type": [
                            "array",
                            "null",
                            "object"
                        ],
                        "title": "\u652f\u6255\u65b9\u6cd5\u8a73\u7d30",
                        "description": "/admin/payment/payment \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u652f\u6255\u65b9\u6cd5\u8a73\u7d30\u3002\u914d\u5217\u8981\u7d20\u306fALPS\u610f\u5473\u3068Fake\u89b3\u5bdf\u306b\u57fa\u3065\u304d\u3001\u56fa\u5b9a\u3067\u304d\u306a\u3044\u52d5\u7684\u5217\u306f\u4f8b\u5916\u7406\u7531\u3092\u53f0\u5e33\u5316\u3059\u308b\u3002",
                        "items": {
                            "type": "string",
                            "title": "\u652f\u6255\u65b9\u6cd5",
                            "minLength": 0,
                            "maxLength": 255,
                            "description": "/admin/payment/payment \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u652f\u6255\u65b9\u6cd5\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `payment` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002"
                        },
                        "minItems": 0,
                        "$comment": "\u5358\u4e00\u8a73\u7d30\u753b\u9762\u3067\u306f\u672a\u9078\u629e/\u521d\u671f\u8868\u793a\u306b\u7a7a\u914d\u5217\u3001\u53d6\u5f97\u6e08\u307f\u72b6\u614b\u306bobject\u304c\u73fe\u308c\u308b\u3002\u4e0d\u900f\u660e\u306a\u8a73\u7d30\u69cb\u9020\u306f\u65e2\u77e5property\u3092\u512a\u5148\u3057\u3001\u8ffd\u52a0\u30ad\u30fc\u306f\u4e92\u63db\u5883\u754c\u3068\u3057\u3066\u8a31\u5bb9\u3059\u308b\u3002"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "paymentId",
                    "csrfToken"
                ]
            },
            "PUT/admin/payment/paymentResponse": {
                "title": "PUT /admin/payment/payment response",
                "description": "PUT /admin/payment/payment response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "charge": {
                        "title": "\u624b\u6570\u6599",
                        "description": "\u53d7\u6ce8\u306e\u6c7a\u6e08\u624b\u6570\u6599\u3002paymentCharge\uff08\u652f\u6255\u65b9\u6cd5\u30de\u30b9\u30bf\u306e\u624b\u6570\u6599\uff09\u306e\u30b9\u30ca\u30c3\u30d7\u30b7\u30e7\u30c3\u30c8\u3002PaymentChargePreprocessor\u306b\u3088\u308a\u53d7\u6ce8\u4f5c\u6210\u6642\u306b\u30b3\u30d4\u30fc\u3055\u308c\u308b Fake\u89b3\u5bdf\u6570\u5024 0\u301c300; \u89b3\u5bdf\u5024 '0', '300', '200'\u3002",
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 0
                    },
                    "paymentMethodName": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 255,
                        "title": "\u652f\u6255\u65b9\u6cd5\u540d",
                        "description": "\u652f\u6255\u65b9\u6cd5\u306e\u8868\u793a\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 4\u301c8; \u89b3\u5bdf\u5024 '\u4ee3\u91d1\u5f15\u63db', '\u30af\u30ec\u30b8\u30c3\u30c8\u30ab\u30fc\u30c9', '\u691c\u8a3c\u5931\u6557'\u3002",
                        "example": "\u4ee3\u91d1\u5f15\u63db"
                    },
                    "ruleMin": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 2147483647,
                        "title": "\u4e0b\u9650\u91d1\u984d",
                        "description": "/admin/payment/payment \u306e\u30d5\u30a9\u30fc\u30e0\u6587\u8108\u3067\u4f7f\u3046\u4e0b\u9650\u91d1\u984d\u3002\u5165\u529b\u4fdd\u6301\u3001\u521d\u671f\u5024\u3001\u518d\u8868\u793a\u306b\u5fc5\u8981\u306a\u88dc\u52a9\u5024\u3002"
                    },
                    "ruleMax": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 2147483647,
                        "title": "\u4e0a\u9650\u91d1\u984d",
                        "description": "/admin/payment/payment \u306e\u30d5\u30a9\u30fc\u30e0\u6587\u8108\u3067\u4f7f\u3046\u4e0a\u9650\u91d1\u984d\u3002\u5165\u529b\u4fdd\u6301\u3001\u521d\u671f\u5024\u3001\u518d\u8868\u793a\u306b\u5fc5\u8981\u306a\u88dc\u52a9\u5024\u3002"
                    },
                    "visible": {
                        "type": [
                            "boolean",
                            "null"
                        ],
                        "title": "\u51e6\u7406\u72b6\u614b\u30d5\u30e9\u30b0",
                        "description": "\u89b3\u5bdf\u5024 'true'\u3002",
                        "example": "true"
                    },
                    "paymentId": {
                        "type": [
                            "string",
                            "integer",
                            "null"
                        ],
                        "title": "\u652f\u6255\u65b9\u6cd5ID",
                        "description": "dtb_payment.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e PaymentMethodAdminEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f 32\u6841hex \u3092\u751f\u6210\u3057\u3001SQL \u5b9f\u88c5\u306f dtb_payment.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u975e\u6570\u5024 ID \u306f SqlPaymentMethodAdminStorage \u3067\u306f miss \u3068\u3057\u3066\u6271\u308f\u308c getById / put / remove \u306e\u3044\u305a\u308c\u3082 404 \u7d4c\u8def (PaymentMethodAdminUpdated / PaymentMethodAdminDeleted) \u3092\u8e0f\u3080\u305f\u3081\u3001\u30b7\u30fc\u30c9\u30cf\u30f3\u30c9\u30eb `nonexistent-zzz` \u306f Fake / SQL \u53cc\u65b9\u3067 404 \u304c\u540c\u5f62\u3002categoryId / blockId / tagId \u3068\u540c\u3058 Fake\u2194SQL \u4e8c\u91cd\u6027 Fake\u89b3\u5bdf\u6587\u5b57\u9577 7\u301c10; Fake\u89b3\u5bdf\u6570\u5024 1\u301c9; \u89b3\u5bdf\u5024 '2', 'pay-cod', 'pay-credit', '1', '9'\u3002",
                        "example": 2,
                        "minLength": 0,
                        "maxLength": 128,
                        "$comment": "Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u305f\u3081\u3001\u3053\u306e\u5883\u754c\u3060\u3051mixedBoundaryId\u3068\u3057\u3066\u6271\u3046\u3002"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "charge",
                    "paymentMethodName",
                    "visible",
                    "paymentId"
                ]
            },
            "DELETE/admin/payment/paymentResponse": {
                "title": "DELETE /admin/payment/payment response",
                "description": "DELETE /admin/payment/payment response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "paymentId": {
                        "type": [
                            "string",
                            "integer",
                            "null"
                        ],
                        "title": "\u652f\u6255\u65b9\u6cd5ID",
                        "description": "dtb_payment.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e PaymentMethodAdminEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f 32\u6841hex \u3092\u751f\u6210\u3057\u3001SQL \u5b9f\u88c5\u306f dtb_payment.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u975e\u6570\u5024 ID \u306f SqlPaymentMethodAdminStorage \u3067\u306f miss \u3068\u3057\u3066\u6271\u308f\u308c getById / put / remove \u306e\u3044\u305a\u308c\u3082 404 \u7d4c\u8def (PaymentMethodAdminUpdated / PaymentMethodAdminDeleted) \u3092\u8e0f\u3080\u305f\u3081\u3001\u30b7\u30fc\u30c9\u30cf\u30f3\u30c9\u30eb `nonexistent-zzz` \u306f Fake / SQL \u53cc\u65b9\u3067 404 \u304c\u540c\u5f62\u3002categoryId / blockId / tagId \u3068\u540c\u3058 Fake\u2194SQL \u4e8c\u91cd\u6027 Fake\u89b3\u5bdf\u6587\u5b57\u9577 7\u301c10; Fake\u89b3\u5bdf\u6570\u5024 1\u301c9; \u89b3\u5bdf\u5024 '2', 'pay-cod', 'pay-credit', '1', '9'\u3002",
                        "example": 2,
                        "minLength": 0,
                        "maxLength": 128,
                        "$comment": "Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u305f\u3081\u3001\u3053\u306e\u5883\u754c\u3060\u3051mixedBoundaryId\u3068\u3057\u3066\u6271\u3046\u3002"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "paymentId"
                ]
            },
            "GET/admin/payment/payment-listResponse": {
                "title": "GET /admin/payment/payment-list response",
                "description": "GET /admin/payment/payment-list response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "payments": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u652f\u6255\u65b9\u6cd5\u4e00\u89a7",
                        "description": "/admin/payment/payment-list \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u652f\u6255\u65b9\u6cd5\u4e00\u89a7\u3002\u914d\u5217\u8981\u7d20\u306fALPS\u610f\u5473\u3068Fake\u89b3\u5bdf\u306b\u57fa\u3065\u304d\u3001\u56fa\u5b9a\u3067\u304d\u306a\u3044\u52d5\u7684\u5217\u306f\u4f8b\u5916\u7406\u7531\u3092\u53f0\u5e33\u5316\u3059\u308b\u3002",
                        "items": {
                            "type": [
                                "object",
                                "null"
                            ],
                            "title": "\u652f\u6255\u65b9\u6cd5",
                            "description": "/admin/payment/payment-list \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u652f\u6255\u65b9\u6cd5\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `payments` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002",
                            "properties": {
                                "charge": {
                                    "title": "\u624b\u6570\u6599",
                                    "description": "\u53d7\u6ce8\u306e\u6c7a\u6e08\u624b\u6570\u6599\u3002paymentCharge\uff08\u652f\u6255\u65b9\u6cd5\u30de\u30b9\u30bf\u306e\u624b\u6570\u6599\uff09\u306e\u30b9\u30ca\u30c3\u30d7\u30b7\u30e7\u30c3\u30c8\u3002PaymentChargePreprocessor\u306b\u3088\u308a\u53d7\u6ce8\u4f5c\u6210\u6642\u306b\u30b3\u30d4\u30fc\u3055\u308c\u308b Fake\u89b3\u5bdf\u6570\u5024 0\u301c300; \u89b3\u5bdf\u5024 '0', '300', '200'\u3002",
                                    "type": [
                                        "integer",
                                        "null"
                                    ],
                                    "minimum": 0,
                                    "maximum": 999999999,
                                    "example": 0
                                },
                                "paymentMethodName": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 255,
                                    "title": "\u652f\u6255\u65b9\u6cd5\u540d",
                                    "description": "\u652f\u6255\u65b9\u6cd5\u306e\u8868\u793a\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 4\u301c8; \u89b3\u5bdf\u5024 '\u4ee3\u91d1\u5f15\u63db', '\u30af\u30ec\u30b8\u30c3\u30c8\u30ab\u30fc\u30c9', '\u691c\u8a3c\u5931\u6557'\u3002",
                                    "example": "\u4ee3\u91d1\u5f15\u63db"
                                },
                                "ruleMin": {
                                    "type": [
                                        "integer",
                                        "null"
                                    ],
                                    "minimum": 0,
                                    "maximum": 2147483647,
                                    "title": "\u4e0b\u9650\u91d1\u984d",
                                    "description": "/admin/payment/payment-list \u306e\u30d5\u30a9\u30fc\u30e0\u6587\u8108\u3067\u4f7f\u3046\u4e0b\u9650\u91d1\u984d\u3002\u5165\u529b\u4fdd\u6301\u3001\u521d\u671f\u5024\u3001\u518d\u8868\u793a\u306b\u5fc5\u8981\u306a\u88dc\u52a9\u5024\u3002"
                                },
                                "ruleMax": {
                                    "type": [
                                        "integer",
                                        "null"
                                    ],
                                    "minimum": 0,
                                    "maximum": 2147483647,
                                    "title": "\u4e0a\u9650\u91d1\u984d",
                                    "description": "/admin/payment/payment-list \u306e\u30d5\u30a9\u30fc\u30e0\u6587\u8108\u3067\u4f7f\u3046\u4e0a\u9650\u91d1\u984d\u3002\u5165\u529b\u4fdd\u6301\u3001\u521d\u671f\u5024\u3001\u518d\u8868\u793a\u306b\u5fc5\u8981\u306a\u88dc\u52a9\u5024\u3002"
                                },
                                "visible": {
                                    "type": [
                                        "boolean",
                                        "null"
                                    ],
                                    "title": "\u51e6\u7406\u72b6\u614b\u30d5\u30e9\u30b0",
                                    "description": "\u89b3\u5bdf\u5024 'true'\u3002",
                                    "example": "true"
                                },
                                "paymentId": {
                                    "type": [
                                        "string",
                                        "integer",
                                        "null"
                                    ],
                                    "title": "\u652f\u6255\u65b9\u6cd5ID",
                                    "description": "dtb_payment.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e PaymentMethodAdminEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f 32\u6841hex \u3092\u751f\u6210\u3057\u3001SQL \u5b9f\u88c5\u306f dtb_payment.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u975e\u6570\u5024 ID \u306f SqlPaymentMethodAdminStorage \u3067\u306f miss \u3068\u3057\u3066\u6271\u308f\u308c getById / put / remove \u306e\u3044\u305a\u308c\u3082 404 \u7d4c\u8def (PaymentMethodAdminUpdated / PaymentMethodAdminDeleted) \u3092\u8e0f\u3080\u305f\u3081\u3001\u30b7\u30fc\u30c9\u30cf\u30f3\u30c9\u30eb `nonexistent-zzz` \u306f Fake / SQL \u53cc\u65b9\u3067 404 \u304c\u540c\u5f62\u3002categoryId / blockId / tagId \u3068\u540c\u3058 Fake\u2194SQL \u4e8c\u91cd\u6027 Fake\u89b3\u5bdf\u6587\u5b57\u9577 7\u301c10; Fake\u89b3\u5bdf\u6570\u5024 1\u301c9; \u89b3\u5bdf\u5024 '2', 'pay-cod', 'pay-credit', '1', '9'\u3002",
                                    "example": 2,
                                    "minLength": 0,
                                    "maxLength": 128,
                                    "$comment": "Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u305f\u3081\u3001\u3053\u306e\u5883\u754c\u3060\u3051mixedBoundaryId\u3068\u3057\u3066\u6271\u3046\u3002"
                                }
                            },
                            "additionalProperties": false,
                            "$comment": "\u914d\u5217\u8981\u7d20\u306fFake/Resource\u3067\u89b3\u5bdf\u3055\u308c\u305f\u65e2\u77e5property\u306b\u56fa\u5b9a\u3059\u308b\u3002\u65b0\u3057\u3044\u5217\u304c\u5fc5\u8981\u306b\u306a\u3063\u305f\u5834\u5408\u306fSemantic-Ex\u89b3\u5bdf\u306b\u8ffd\u52a0\u3057\u3066schema\u3092\u66f4\u65b0\u3059\u308b\u3002"
                        },
                        "minItems": 0
                    },
                    "count": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 2147483647,
                        "title": "\u4ef6\u6570",
                        "description": "/admin/payment/payment-list \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8fd4\u3059\u4ef6\u6570\u3002\u4e00\u89a7\u30fb\u96c6\u8a08\u30fb\u51e6\u7406\u7d50\u679c\u306e\u898f\u6a21\u3092\u8868\u3059\u975e\u8ca0\u6574\u6570\u3002"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u4e00\u89a7\u753b\u9762\u304b\u3089\u9001\u4fe1\u3059\u308b\u524a\u9664\u30fb\u8868\u793a\u5207\u66ff\u30d5\u30a9\u30fc\u30e0\u7528\u306eCSRF\u30c8\u30fc\u30af\u30f3\u3002",
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]*$"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "payments",
                    "count",
                    "csrfToken"
                ]
            },
            "POST/admin/payment/payment-listResponse": {
                "title": "POST /admin/payment/payment-list response",
                "description": "POST /admin/payment/payment-list response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "charge": {
                        "title": "\u624b\u6570\u6599",
                        "description": "\u53d7\u6ce8\u306e\u6c7a\u6e08\u624b\u6570\u6599\u3002paymentCharge\uff08\u652f\u6255\u65b9\u6cd5\u30de\u30b9\u30bf\u306e\u624b\u6570\u6599\uff09\u306e\u30b9\u30ca\u30c3\u30d7\u30b7\u30e7\u30c3\u30c8\u3002PaymentChargePreprocessor\u306b\u3088\u308a\u53d7\u6ce8\u4f5c\u6210\u6642\u306b\u30b3\u30d4\u30fc\u3055\u308c\u308b Fake\u89b3\u5bdf\u6570\u5024 0\u301c300; \u89b3\u5bdf\u5024 '0', '300', '200'\u3002",
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 0
                    },
                    "paymentMethodName": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 255,
                        "title": "\u652f\u6255\u65b9\u6cd5\u540d",
                        "description": "\u652f\u6255\u65b9\u6cd5\u306e\u8868\u793a\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 4\u301c8; \u89b3\u5bdf\u5024 '\u4ee3\u91d1\u5f15\u63db', '\u30af\u30ec\u30b8\u30c3\u30c8\u30ab\u30fc\u30c9', '\u691c\u8a3c\u5931\u6557'\u3002",
                        "example": "\u4ee3\u91d1\u5f15\u63db"
                    },
                    "ruleMin": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 2147483647,
                        "title": "\u4e0b\u9650\u91d1\u984d",
                        "description": "/admin/payment/payment-list \u306e\u30d5\u30a9\u30fc\u30e0\u6587\u8108\u3067\u4f7f\u3046\u4e0b\u9650\u91d1\u984d\u3002\u5165\u529b\u4fdd\u6301\u3001\u521d\u671f\u5024\u3001\u518d\u8868\u793a\u306b\u5fc5\u8981\u306a\u88dc\u52a9\u5024\u3002"
                    },
                    "ruleMax": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 2147483647,
                        "title": "\u4e0a\u9650\u91d1\u984d",
                        "description": "/admin/payment/payment-list \u306e\u30d5\u30a9\u30fc\u30e0\u6587\u8108\u3067\u4f7f\u3046\u4e0a\u9650\u91d1\u984d\u3002\u5165\u529b\u4fdd\u6301\u3001\u521d\u671f\u5024\u3001\u518d\u8868\u793a\u306b\u5fc5\u8981\u306a\u88dc\u52a9\u5024\u3002"
                    },
                    "visible": {
                        "type": [
                            "boolean",
                            "null"
                        ],
                        "title": "\u51e6\u7406\u72b6\u614b\u30d5\u30e9\u30b0",
                        "description": "\u89b3\u5bdf\u5024 'true'\u3002",
                        "example": "true"
                    },
                    "paymentId": {
                        "type": [
                            "string",
                            "integer",
                            "null"
                        ],
                        "title": "\u652f\u6255\u65b9\u6cd5ID",
                        "description": "dtb_payment.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e PaymentMethodAdminEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f 32\u6841hex \u3092\u751f\u6210\u3057\u3001SQL \u5b9f\u88c5\u306f dtb_payment.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u975e\u6570\u5024 ID \u306f SqlPaymentMethodAdminStorage \u3067\u306f miss \u3068\u3057\u3066\u6271\u308f\u308c getById / put / remove \u306e\u3044\u305a\u308c\u3082 404 \u7d4c\u8def (PaymentMethodAdminUpdated / PaymentMethodAdminDeleted) \u3092\u8e0f\u3080\u305f\u3081\u3001\u30b7\u30fc\u30c9\u30cf\u30f3\u30c9\u30eb `nonexistent-zzz` \u306f Fake / SQL \u53cc\u65b9\u3067 404 \u304c\u540c\u5f62\u3002categoryId / blockId / tagId \u3068\u540c\u3058 Fake\u2194SQL \u4e8c\u91cd\u6027 Fake\u89b3\u5bdf\u6587\u5b57\u9577 7\u301c10; Fake\u89b3\u5bdf\u6570\u5024 1\u301c9; \u89b3\u5bdf\u5024 '2', 'pay-cod', 'pay-credit', '1', '9'\u3002",
                        "example": 2,
                        "minLength": 0,
                        "maxLength": 128,
                        "$comment": "Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u305f\u3081\u3001\u3053\u306e\u5883\u754c\u3060\u3051mixedBoundaryId\u3068\u3057\u3066\u6271\u3046\u3002"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "charge",
                    "paymentMethodName",
                    "visible",
                    "paymentId"
                ]
            },
            "GET/admin/product/csv-categoryResponse": {
                "title": "GET /admin/product/csv-category response",
                "description": "GET /admin/product/csv-category response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "form": {
                        "type": [
                            "object",
                            "array",
                            "null"
                        ],
                        "title": "\u5165\u529b\u30d5\u30a9\u30fc\u30e0",
                        "description": "Aura/WebForm\u7531\u6765\u306e\u30d5\u30a9\u30fc\u30e0\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3002\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5185\u90e8\u69cb\u9020\u306e\u305f\u3081schema\u3067\u306f\u5b58\u5728\u3068\u578b\u306e\u307f\u3092\u5951\u7d04\u3059\u308b\u3002",
                        "$comment": "Aura/WebForm\u7531\u6765\u306e\u4e0d\u900f\u660e\u30d5\u30a9\u30fc\u30e0\u8868\u73fe\u3002Resource\u5883\u754c\u3067\u306f\u30d5\u30a9\u30fc\u30e0\u306e\u5b58\u5728\u3068\u30b3\u30f3\u30c6\u30ad\u30b9\u30c8\u3060\u3051\u3092\u5951\u7d04\u3057\u3001\u5185\u90e8\u69cb\u9020\u306f\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5883\u754c\u306b\u59d4\u306d\u308b\u305f\u3081\u8ffd\u52a0\u30ad\u30fc\u5236\u7d04\u3092\u7f6e\u304b\u306a\u3044\u3002"
                    },
                    "csvTitle": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 255,
                        "title": "CSV\u30bf\u30a4\u30c8\u30eb",
                        "description": "/admin/product/csv-category \u306e\u753b\u9762\u8868\u793a\u306b\u4f7f\u3046CSV\u30bf\u30a4\u30c8\u30eb\u3002\u696d\u52d9\u30a8\u30f3\u30c6\u30a3\u30c6\u30a3\u305d\u306e\u3082\u306e\u3067\u306f\u306a\u304f\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8/\u4e00\u89a7\u8868\u793a\u306e\u88dc\u52a9\u5024\u3002"
                    },
                    "skeletonRoute": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 255,
                        "title": "\u30b9\u30b1\u30eb\u30c8\u30f3\u30eb\u30fc\u30c8",
                        "description": "/admin/product/csv-category \u306e\u753b\u9762\u8868\u793a\u306b\u4f7f\u3046\u30b9\u30b1\u30eb\u30c8\u30f3\u30eb\u30fc\u30c8\u3002\u696d\u52d9\u30a8\u30f3\u30c6\u30a3\u30c6\u30a3\u305d\u306e\u3082\u306e\u3067\u306f\u306a\u304f\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8/\u4e00\u89a7\u8868\u793a\u306e\u88dc\u52a9\u5024\u3002"
                    },
                    "columns": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "CSV\u5217\u5b9a\u7fa9",
                        "description": "/admin/product/csv-category \u306eCSV\u5217\u8a2d\u5b9a\u3002\u5404\u8981\u7d20\u306f\u51fa\u529b\u5bfe\u8c61\u30d5\u30a3\u30fc\u30eb\u30c9\u3068\u8868\u793a\u540d\u3092\u8868\u3059\u3002",
                        "items": {
                            "type": [
                                "object",
                                "null"
                            ],
                            "title": "CSV\u5217",
                            "description": "/admin/product/csv-category \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308bCSV\u5217\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `columns` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002",
                            "properties": {
                                "description": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 128,
                                    "title": "\u8a73\u7d30\u8aac\u660e\u6587",
                                    "description": "\u5546\u54c1\u8a73\u7d30\u30da\u30fc\u30b8\u306b\u8868\u793a\u3059\u308b\u8aac\u660e\u6587 Fake\u89b3\u5bdf\u6587\u5b57\u9577 12\u301c32; \u89b3\u5bdf\u5024 'Stock-unlimited fixture', 'Wave 8 admin grid: visible row', 'Wave 8 admin grid: hidden row', 'Wave 8 admin grid: withdrawn row', '\u7ba1\u7406\u753b\u9762\u304b\u3089\u540d\u79f0\u5909\u66f4\u3057\u305f\u3001\u5f69\u308a\u8c4a\u304b\u306a\u30b8\u30a7\u30e9\u30fc\u30c8\u30bb\u30c3\u30c8\u3067\u3059\u3002', '\u7ba1\u7406\u753b\u9762\u304b\u3089\u4f5c\u6210\u3057\u305f\u5546\u54c1'; null 1/7\u3002",
                                    "example": "Stock-unlimited fixture"
                                },
                                "name": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 255,
                                    "title": "\u5546\u54c1\u540d",
                                    "description": "/admin/product/csv-category \u3067\u8868\u793a\u3059\u308b\u5546\u54c1\u540d\u3002\u691c\u7d22\u30fb\u4e00\u89a7\u30fb\u8a73\u7d30\u3067\u30e6\u30fc\u30b6\u30fc\u306b\u898b\u305b\u308b\u8ca9\u58f2\u540d\u3002",
                                    "example": "\u30c6\u30b9\u30c8\u7ba1\u7406\u8005"
                                }
                            },
                            "$comment": "\u914d\u5217\u8981\u7d20\u306f\u30de\u30b9\u30bf/CSV/option map\u306e\u52d5\u7684\u884c\u3067\u3042\u308a\u3001\u5217\u96c6\u5408\u304c\u5bfe\u8c61\u7a2e\u5225\u306b\u3088\u308a\u5909\u308f\u308b\u305f\u3081\u56fa\u5b9ashape\u5316\u3057\u306a\u3044\u3002\u65e2\u77e5property\u306f\u5951\u7d04\u3057\u3001\u8ffd\u52a0\u5217\u306f\u8a72\u5f53\u30b5\u30fc\u30d3\u30b9\u5883\u754c\u3067\u6271\u3046\u3002"
                        },
                        "minItems": 0
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "csvTitle",
                    "skeletonRoute",
                    "columns",
                    "csrfToken"
                ]
            },
            "GET/admin/product/csv-class-categoryResponse": {
                "title": "GET /admin/product/csv-class-category response",
                "description": "GET /admin/product/csv-class-category response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "form": {
                        "type": [
                            "object",
                            "array",
                            "null"
                        ],
                        "title": "\u5165\u529b\u30d5\u30a9\u30fc\u30e0",
                        "description": "Aura/WebForm\u7531\u6765\u306e\u30d5\u30a9\u30fc\u30e0\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3002\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5185\u90e8\u69cb\u9020\u306e\u305f\u3081schema\u3067\u306f\u5b58\u5728\u3068\u578b\u306e\u307f\u3092\u5951\u7d04\u3059\u308b\u3002",
                        "$comment": "Aura/WebForm\u7531\u6765\u306e\u4e0d\u900f\u660e\u30d5\u30a9\u30fc\u30e0\u8868\u73fe\u3002Resource\u5883\u754c\u3067\u306f\u30d5\u30a9\u30fc\u30e0\u306e\u5b58\u5728\u3068\u30b3\u30f3\u30c6\u30ad\u30b9\u30c8\u3060\u3051\u3092\u5951\u7d04\u3057\u3001\u5185\u90e8\u69cb\u9020\u306f\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5883\u754c\u306b\u59d4\u306d\u308b\u305f\u3081\u8ffd\u52a0\u30ad\u30fc\u5236\u7d04\u3092\u7f6e\u304b\u306a\u3044\u3002"
                    },
                    "csvTitle": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 255,
                        "title": "CSV\u30bf\u30a4\u30c8\u30eb",
                        "description": "/admin/product/csv-class-category \u306e\u753b\u9762\u8868\u793a\u306b\u4f7f\u3046CSV\u30bf\u30a4\u30c8\u30eb\u3002\u696d\u52d9\u30a8\u30f3\u30c6\u30a3\u30c6\u30a3\u305d\u306e\u3082\u306e\u3067\u306f\u306a\u304f\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8/\u4e00\u89a7\u8868\u793a\u306e\u88dc\u52a9\u5024\u3002"
                    },
                    "skeletonRoute": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 255,
                        "title": "\u30b9\u30b1\u30eb\u30c8\u30f3\u30eb\u30fc\u30c8",
                        "description": "/admin/product/csv-class-category \u306e\u753b\u9762\u8868\u793a\u306b\u4f7f\u3046\u30b9\u30b1\u30eb\u30c8\u30f3\u30eb\u30fc\u30c8\u3002\u696d\u52d9\u30a8\u30f3\u30c6\u30a3\u30c6\u30a3\u305d\u306e\u3082\u306e\u3067\u306f\u306a\u304f\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8/\u4e00\u89a7\u8868\u793a\u306e\u88dc\u52a9\u5024\u3002"
                    },
                    "columns": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "CSV\u5217\u5b9a\u7fa9",
                        "description": "/admin/product/csv-class-category \u306eCSV\u5217\u8a2d\u5b9a\u3002\u5404\u8981\u7d20\u306f\u51fa\u529b\u5bfe\u8c61\u30d5\u30a3\u30fc\u30eb\u30c9\u3068\u8868\u793a\u540d\u3092\u8868\u3059\u3002",
                        "items": {
                            "type": [
                                "object",
                                "null"
                            ],
                            "title": "CSV\u5217",
                            "description": "/admin/product/csv-class-category \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308bCSV\u5217\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `columns` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002",
                            "properties": {
                                "description": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 128,
                                    "title": "\u8a73\u7d30\u8aac\u660e\u6587",
                                    "description": "\u5546\u54c1\u8a73\u7d30\u30da\u30fc\u30b8\u306b\u8868\u793a\u3059\u308b\u8aac\u660e\u6587 Fake\u89b3\u5bdf\u6587\u5b57\u9577 12\u301c32; \u89b3\u5bdf\u5024 'Stock-unlimited fixture', 'Wave 8 admin grid: visible row', 'Wave 8 admin grid: hidden row', 'Wave 8 admin grid: withdrawn row', '\u7ba1\u7406\u753b\u9762\u304b\u3089\u540d\u79f0\u5909\u66f4\u3057\u305f\u3001\u5f69\u308a\u8c4a\u304b\u306a\u30b8\u30a7\u30e9\u30fc\u30c8\u30bb\u30c3\u30c8\u3067\u3059\u3002', '\u7ba1\u7406\u753b\u9762\u304b\u3089\u4f5c\u6210\u3057\u305f\u5546\u54c1'; null 1/7\u3002",
                                    "example": "Stock-unlimited fixture"
                                },
                                "name": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 255,
                                    "title": "\u5546\u54c1\u540d",
                                    "description": "/admin/product/csv-class-category \u3067\u8868\u793a\u3059\u308b\u5546\u54c1\u540d\u3002\u691c\u7d22\u30fb\u4e00\u89a7\u30fb\u8a73\u7d30\u3067\u30e6\u30fc\u30b6\u30fc\u306b\u898b\u305b\u308b\u8ca9\u58f2\u540d\u3002",
                                    "example": "\u30c6\u30b9\u30c8\u7ba1\u7406\u8005"
                                }
                            },
                            "$comment": "\u914d\u5217\u8981\u7d20\u306f\u30de\u30b9\u30bf/CSV/option map\u306e\u52d5\u7684\u884c\u3067\u3042\u308a\u3001\u5217\u96c6\u5408\u304c\u5bfe\u8c61\u7a2e\u5225\u306b\u3088\u308a\u5909\u308f\u308b\u305f\u3081\u56fa\u5b9ashape\u5316\u3057\u306a\u3044\u3002\u65e2\u77e5property\u306f\u5951\u7d04\u3057\u3001\u8ffd\u52a0\u5217\u306f\u8a72\u5f53\u30b5\u30fc\u30d3\u30b9\u5883\u754c\u3067\u6271\u3046\u3002"
                        },
                        "minItems": 0
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "csvTitle",
                    "skeletonRoute",
                    "columns",
                    "csrfToken"
                ]
            },
            "POST/admin/product/csv-class-categoryResponse": {
                "title": "POST /admin/product/csv-class-category response",
                "description": "POST /admin/product/csv-class-category response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "message": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "CSV\u30e1\u30c3\u30bb\u30fc\u30b8",
                        "description": "/admin/product/csv-class-category \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u51e6\u7406\u7d50\u679c\u30e1\u30c3\u30bb\u30fc\u30b8\u3002\u6ce8\u6587\u6642\u304a\u554f\u3044\u5408\u308f\u305b\u6b04\u3067\u306f\u306a\u304f\u3001\u753b\u9762\u9077\u79fb\u3084\u5b8c\u4e86\u8868\u793a\u306e\u305f\u3081\u306e\u901a\u77e5\u6587\u3002",
                        "example": "\u914d\u9001\u306f\u5e73\u65e5\u5e0c\u671b\u3067\u3059\u3002"
                    },
                    "accepted": {
                        "type": [
                            "integer",
                            "boolean",
                            "null"
                        ],
                        "title": "\u53d7\u7406\u4ef6\u6570",
                        "description": "/admin/product/csv-class-category \u306e\u51e6\u7406\u72b6\u614b\u3092\u793a\u3059\u53d7\u7406\u4ef6\u6570\u3002\u753b\u9762\u8868\u793a\u3084\u51aa\u7b49\u51e6\u7406\u7d50\u679c\u306e\u5206\u5c90\u306b\u4f7f\u3046\u771f\u507d\u5024\u3002",
                        "minimum": 0
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "\u3053\u306e\u30ec\u30b9\u30dd\u30f3\u30b9/\u64cd\u4f5c\u304c\u5bfe\u5fdc\u3059\u308bALPS\u9077\u79fbID\u3002\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u306e\u72b6\u614b\u9077\u79fb\u8ffd\u8de1\u306b\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "accepted",
                    "transitionId"
                ]
            },
            "GET/admin/product/csv-class-nameResponse": {
                "title": "GET /admin/product/csv-class-name response",
                "description": "GET /admin/product/csv-class-name response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "form": {
                        "type": [
                            "object",
                            "array",
                            "null"
                        ],
                        "title": "\u5165\u529b\u30d5\u30a9\u30fc\u30e0",
                        "description": "Aura/WebForm\u7531\u6765\u306e\u30d5\u30a9\u30fc\u30e0\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3002\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5185\u90e8\u69cb\u9020\u306e\u305f\u3081schema\u3067\u306f\u5b58\u5728\u3068\u578b\u306e\u307f\u3092\u5951\u7d04\u3059\u308b\u3002",
                        "$comment": "Aura/WebForm\u7531\u6765\u306e\u4e0d\u900f\u660e\u30d5\u30a9\u30fc\u30e0\u8868\u73fe\u3002Resource\u5883\u754c\u3067\u306f\u30d5\u30a9\u30fc\u30e0\u306e\u5b58\u5728\u3068\u30b3\u30f3\u30c6\u30ad\u30b9\u30c8\u3060\u3051\u3092\u5951\u7d04\u3057\u3001\u5185\u90e8\u69cb\u9020\u306f\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5883\u754c\u306b\u59d4\u306d\u308b\u305f\u3081\u8ffd\u52a0\u30ad\u30fc\u5236\u7d04\u3092\u7f6e\u304b\u306a\u3044\u3002"
                    },
                    "csvTitle": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 255,
                        "title": "CSV\u30bf\u30a4\u30c8\u30eb",
                        "description": "/admin/product/csv-class-name \u306e\u753b\u9762\u8868\u793a\u306b\u4f7f\u3046CSV\u30bf\u30a4\u30c8\u30eb\u3002\u696d\u52d9\u30a8\u30f3\u30c6\u30a3\u30c6\u30a3\u305d\u306e\u3082\u306e\u3067\u306f\u306a\u304f\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8/\u4e00\u89a7\u8868\u793a\u306e\u88dc\u52a9\u5024\u3002"
                    },
                    "skeletonRoute": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 255,
                        "title": "\u30b9\u30b1\u30eb\u30c8\u30f3\u30eb\u30fc\u30c8",
                        "description": "/admin/product/csv-class-name \u306e\u753b\u9762\u8868\u793a\u306b\u4f7f\u3046\u30b9\u30b1\u30eb\u30c8\u30f3\u30eb\u30fc\u30c8\u3002\u696d\u52d9\u30a8\u30f3\u30c6\u30a3\u30c6\u30a3\u305d\u306e\u3082\u306e\u3067\u306f\u306a\u304f\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8/\u4e00\u89a7\u8868\u793a\u306e\u88dc\u52a9\u5024\u3002"
                    },
                    "columns": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "CSV\u5217\u5b9a\u7fa9",
                        "description": "/admin/product/csv-class-name \u306eCSV\u5217\u8a2d\u5b9a\u3002\u5404\u8981\u7d20\u306f\u51fa\u529b\u5bfe\u8c61\u30d5\u30a3\u30fc\u30eb\u30c9\u3068\u8868\u793a\u540d\u3092\u8868\u3059\u3002",
                        "items": {
                            "type": [
                                "object",
                                "null"
                            ],
                            "title": "CSV\u5217",
                            "description": "/admin/product/csv-class-name \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308bCSV\u5217\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `columns` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002",
                            "properties": {
                                "description": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 128,
                                    "title": "\u8a73\u7d30\u8aac\u660e\u6587",
                                    "description": "\u5546\u54c1\u8a73\u7d30\u30da\u30fc\u30b8\u306b\u8868\u793a\u3059\u308b\u8aac\u660e\u6587 Fake\u89b3\u5bdf\u6587\u5b57\u9577 12\u301c32; \u89b3\u5bdf\u5024 'Stock-unlimited fixture', 'Wave 8 admin grid: visible row', 'Wave 8 admin grid: hidden row', 'Wave 8 admin grid: withdrawn row', '\u7ba1\u7406\u753b\u9762\u304b\u3089\u540d\u79f0\u5909\u66f4\u3057\u305f\u3001\u5f69\u308a\u8c4a\u304b\u306a\u30b8\u30a7\u30e9\u30fc\u30c8\u30bb\u30c3\u30c8\u3067\u3059\u3002', '\u7ba1\u7406\u753b\u9762\u304b\u3089\u4f5c\u6210\u3057\u305f\u5546\u54c1'; null 1/7\u3002",
                                    "example": "Stock-unlimited fixture"
                                },
                                "name": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 255,
                                    "title": "\u5546\u54c1\u540d",
                                    "description": "/admin/product/csv-class-name \u3067\u8868\u793a\u3059\u308b\u5546\u54c1\u540d\u3002\u691c\u7d22\u30fb\u4e00\u89a7\u30fb\u8a73\u7d30\u3067\u30e6\u30fc\u30b6\u30fc\u306b\u898b\u305b\u308b\u8ca9\u58f2\u540d\u3002",
                                    "example": "\u30c6\u30b9\u30c8\u7ba1\u7406\u8005"
                                }
                            },
                            "$comment": "\u914d\u5217\u8981\u7d20\u306f\u30de\u30b9\u30bf/CSV/option map\u306e\u52d5\u7684\u884c\u3067\u3042\u308a\u3001\u5217\u96c6\u5408\u304c\u5bfe\u8c61\u7a2e\u5225\u306b\u3088\u308a\u5909\u308f\u308b\u305f\u3081\u56fa\u5b9ashape\u5316\u3057\u306a\u3044\u3002\u65e2\u77e5property\u306f\u5951\u7d04\u3057\u3001\u8ffd\u52a0\u5217\u306f\u8a72\u5f53\u30b5\u30fc\u30d3\u30b9\u5883\u754c\u3067\u6271\u3046\u3002"
                        },
                        "minItems": 0
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "csvTitle",
                    "skeletonRoute",
                    "columns",
                    "csrfToken"
                ]
            },
            "POST/admin/product/csv-class-nameResponse": {
                "title": "POST /admin/product/csv-class-name response",
                "description": "POST /admin/product/csv-class-name response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "message": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "CSV\u30e1\u30c3\u30bb\u30fc\u30b8",
                        "description": "/admin/product/csv-class-name \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u51e6\u7406\u7d50\u679c\u30e1\u30c3\u30bb\u30fc\u30b8\u3002\u6ce8\u6587\u6642\u304a\u554f\u3044\u5408\u308f\u305b\u6b04\u3067\u306f\u306a\u304f\u3001\u753b\u9762\u9077\u79fb\u3084\u5b8c\u4e86\u8868\u793a\u306e\u305f\u3081\u306e\u901a\u77e5\u6587\u3002",
                        "example": "\u914d\u9001\u306f\u5e73\u65e5\u5e0c\u671b\u3067\u3059\u3002"
                    },
                    "accepted": {
                        "type": [
                            "integer",
                            "boolean",
                            "null"
                        ],
                        "title": "\u53d7\u7406\u4ef6\u6570",
                        "description": "/admin/product/csv-class-name \u306e\u51e6\u7406\u72b6\u614b\u3092\u793a\u3059\u53d7\u7406\u4ef6\u6570\u3002\u753b\u9762\u8868\u793a\u3084\u51aa\u7b49\u51e6\u7406\u7d50\u679c\u306e\u5206\u5c90\u306b\u4f7f\u3046\u771f\u507d\u5024\u3002",
                        "minimum": 0
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "\u3053\u306e\u30ec\u30b9\u30dd\u30f3\u30b9/\u64cd\u4f5c\u304c\u5bfe\u5fdc\u3059\u308bALPS\u9077\u79fbID\u3002\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u306e\u72b6\u614b\u9077\u79fb\u8ffd\u8de1\u306b\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "accepted",
                    "transitionId"
                ]
            },
            "GET/admin/product/csv-productResponse": {
                "title": "GET /admin/product/csv-product response",
                "description": "GET /admin/product/csv-product response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "form": {
                        "type": [
                            "object",
                            "array",
                            "null"
                        ],
                        "title": "\u5165\u529b\u30d5\u30a9\u30fc\u30e0",
                        "description": "Aura/WebForm\u7531\u6765\u306e\u30d5\u30a9\u30fc\u30e0\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3002\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5185\u90e8\u69cb\u9020\u306e\u305f\u3081schema\u3067\u306f\u5b58\u5728\u3068\u578b\u306e\u307f\u3092\u5951\u7d04\u3059\u308b\u3002",
                        "$comment": "Aura/WebForm\u7531\u6765\u306e\u4e0d\u900f\u660e\u30d5\u30a9\u30fc\u30e0\u8868\u73fe\u3002Resource\u5883\u754c\u3067\u306f\u30d5\u30a9\u30fc\u30e0\u306e\u5b58\u5728\u3068\u30b3\u30f3\u30c6\u30ad\u30b9\u30c8\u3060\u3051\u3092\u5951\u7d04\u3057\u3001\u5185\u90e8\u69cb\u9020\u306f\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5883\u754c\u306b\u59d4\u306d\u308b\u305f\u3081\u8ffd\u52a0\u30ad\u30fc\u5236\u7d04\u3092\u7f6e\u304b\u306a\u3044\u3002"
                    },
                    "csvTitle": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 255,
                        "title": "CSV\u30bf\u30a4\u30c8\u30eb",
                        "description": "/admin/product/csv-product \u306e\u753b\u9762\u8868\u793a\u306b\u4f7f\u3046CSV\u30bf\u30a4\u30c8\u30eb\u3002\u696d\u52d9\u30a8\u30f3\u30c6\u30a3\u30c6\u30a3\u305d\u306e\u3082\u306e\u3067\u306f\u306a\u304f\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8/\u4e00\u89a7\u8868\u793a\u306e\u88dc\u52a9\u5024\u3002"
                    },
                    "skeletonRoute": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 255,
                        "title": "\u30b9\u30b1\u30eb\u30c8\u30f3\u30eb\u30fc\u30c8",
                        "description": "/admin/product/csv-product \u306e\u753b\u9762\u8868\u793a\u306b\u4f7f\u3046\u30b9\u30b1\u30eb\u30c8\u30f3\u30eb\u30fc\u30c8\u3002\u696d\u52d9\u30a8\u30f3\u30c6\u30a3\u30c6\u30a3\u305d\u306e\u3082\u306e\u3067\u306f\u306a\u304f\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8/\u4e00\u89a7\u8868\u793a\u306e\u88dc\u52a9\u5024\u3002"
                    },
                    "columns": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "CSV\u5217\u5b9a\u7fa9",
                        "description": "/admin/product/csv-product \u306eCSV\u5217\u8a2d\u5b9a\u3002\u5404\u8981\u7d20\u306f\u51fa\u529b\u5bfe\u8c61\u30d5\u30a3\u30fc\u30eb\u30c9\u3068\u8868\u793a\u540d\u3092\u8868\u3059\u3002",
                        "items": {
                            "type": [
                                "object",
                                "null"
                            ],
                            "title": "CSV\u5217",
                            "description": "/admin/product/csv-product \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308bCSV\u5217\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `columns` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002",
                            "properties": {
                                "description": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 128,
                                    "title": "\u8a73\u7d30\u8aac\u660e\u6587",
                                    "description": "\u5546\u54c1\u8a73\u7d30\u30da\u30fc\u30b8\u306b\u8868\u793a\u3059\u308b\u8aac\u660e\u6587 Fake\u89b3\u5bdf\u6587\u5b57\u9577 12\u301c32; \u89b3\u5bdf\u5024 'Stock-unlimited fixture', 'Wave 8 admin grid: visible row', 'Wave 8 admin grid: hidden row', 'Wave 8 admin grid: withdrawn row', '\u7ba1\u7406\u753b\u9762\u304b\u3089\u540d\u79f0\u5909\u66f4\u3057\u305f\u3001\u5f69\u308a\u8c4a\u304b\u306a\u30b8\u30a7\u30e9\u30fc\u30c8\u30bb\u30c3\u30c8\u3067\u3059\u3002', '\u7ba1\u7406\u753b\u9762\u304b\u3089\u4f5c\u6210\u3057\u305f\u5546\u54c1'; null 1/7\u3002",
                                    "example": "Stock-unlimited fixture"
                                },
                                "name": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 255,
                                    "title": "\u5546\u54c1\u540d",
                                    "description": "/admin/product/csv-product \u3067\u8868\u793a\u3059\u308b\u5546\u54c1\u540d\u3002\u691c\u7d22\u30fb\u4e00\u89a7\u30fb\u8a73\u7d30\u3067\u30e6\u30fc\u30b6\u30fc\u306b\u898b\u305b\u308b\u8ca9\u58f2\u540d\u3002",
                                    "example": "\u30c6\u30b9\u30c8\u7ba1\u7406\u8005"
                                }
                            },
                            "$comment": "\u914d\u5217\u8981\u7d20\u306f\u30de\u30b9\u30bf/CSV/option map\u306e\u52d5\u7684\u884c\u3067\u3042\u308a\u3001\u5217\u96c6\u5408\u304c\u5bfe\u8c61\u7a2e\u5225\u306b\u3088\u308a\u5909\u308f\u308b\u305f\u3081\u56fa\u5b9ashape\u5316\u3057\u306a\u3044\u3002\u65e2\u77e5property\u306f\u5951\u7d04\u3057\u3001\u8ffd\u52a0\u5217\u306f\u8a72\u5f53\u30b5\u30fc\u30d3\u30b9\u5883\u754c\u3067\u6271\u3046\u3002"
                        },
                        "minItems": 0
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "csvTitle",
                    "skeletonRoute",
                    "columns",
                    "csrfToken"
                ]
            },
            "GET/admin/product/editResponse": {
                "title": "GET /admin/product/edit response",
                "description": "GET /admin/product/edit response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "form": {
                        "type": [
                            "object",
                            "array",
                            "null"
                        ],
                        "title": "\u5165\u529b\u30d5\u30a9\u30fc\u30e0",
                        "description": "Aura/WebForm\u7531\u6765\u306e\u30d5\u30a9\u30fc\u30e0\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3002\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5185\u90e8\u69cb\u9020\u306e\u305f\u3081schema\u3067\u306f\u5b58\u5728\u3068\u578b\u306e\u307f\u3092\u5951\u7d04\u3059\u308b\u3002",
                        "$comment": "Aura/WebForm\u7531\u6765\u306e\u4e0d\u900f\u660e\u30d5\u30a9\u30fc\u30e0\u8868\u73fe\u3002Resource\u5883\u754c\u3067\u306f\u30d5\u30a9\u30fc\u30e0\u306e\u5b58\u5728\u3068\u30b3\u30f3\u30c6\u30ad\u30b9\u30c8\u3060\u3051\u3092\u5951\u7d04\u3057\u3001\u5185\u90e8\u69cb\u9020\u306f\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5883\u754c\u306b\u59d4\u306d\u308b\u305f\u3081\u8ffd\u52a0\u30ad\u30fc\u5236\u7d04\u3092\u7f6e\u304b\u306a\u3044\u3002"
                    },
                    "product": {
                        "type": [
                            "array",
                            "null",
                            "object"
                        ],
                        "title": "\u5546\u54c1\u8a73\u7d30",
                        "description": "/admin/product/edit \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u5546\u54c1\u8a73\u7d30\u3002\u914d\u5217\u8981\u7d20\u306fALPS\u610f\u5473\u3068Fake\u89b3\u5bdf\u306b\u57fa\u3065\u304d\u3001\u56fa\u5b9a\u3067\u304d\u306a\u3044\u52d5\u7684\u5217\u306f\u4f8b\u5916\u7406\u7531\u3092\u53f0\u5e33\u5316\u3059\u308b\u3002",
                        "items": {
                            "type": "string",
                            "title": "\u5546\u54c1",
                            "minLength": 0,
                            "maxLength": 255,
                            "description": "/admin/product/edit \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u5546\u54c1\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `product` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002"
                        },
                        "minItems": 0,
                        "$comment": "\u5358\u4e00\u8a73\u7d30\u753b\u9762\u3067\u306f\u672a\u9078\u629e/\u521d\u671f\u8868\u793a\u306b\u7a7a\u914d\u5217\u3001\u53d6\u5f97\u6e08\u307f\u72b6\u614b\u306bobject\u304c\u73fe\u308c\u308b\u3002\u4e0d\u900f\u660e\u306a\u8a73\u7d30\u69cb\u9020\u306f\u65e2\u77e5property\u3092\u512a\u5148\u3057\u3001\u8ffd\u52a0\u30ad\u30fc\u306f\u4e92\u63db\u5883\u754c\u3068\u3057\u3066\u8a31\u5bb9\u3059\u308b\u3002"
                    },
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 \u5546\u54c1\u3092\u8b58\u5225\u3059\u308bSKU\u3002Fake corpus\u3067\u306fASCII\u82f1\u6570\u30fb\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3067\u3001\u53d7\u6ce8\u660e\u7d30/\u30ab\u30fc\u30c8\u660e\u7d30\u306e\u7d50\u5408\u30ad\u30fc\u306b\u306a\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c26\u3002",
                        "type": "string",
                        "minLength": 0,
                        "maxLength": 64,
                        "example": "sample-001"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "product",
                    "productCode",
                    "csrfToken"
                ]
            },
            "GET/admin/product/product-classResponse": {
                "title": "GET /admin/product/product-class response",
                "description": "GET /admin/product/product-class response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "form": {
                        "type": [
                            "object",
                            "array",
                            "null"
                        ],
                        "title": "\u5165\u529b\u30d5\u30a9\u30fc\u30e0",
                        "description": "Aura/WebForm\u7531\u6765\u306e\u30d5\u30a9\u30fc\u30e0\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3002\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5185\u90e8\u69cb\u9020\u306e\u305f\u3081schema\u3067\u306f\u5b58\u5728\u3068\u578b\u306e\u307f\u3092\u5951\u7d04\u3059\u308b\u3002",
                        "$comment": "Aura/WebForm\u7531\u6765\u306e\u4e0d\u900f\u660e\u30d5\u30a9\u30fc\u30e0\u8868\u73fe\u3002Resource\u5883\u754c\u3067\u306f\u30d5\u30a9\u30fc\u30e0\u306e\u5b58\u5728\u3068\u30b3\u30f3\u30c6\u30ad\u30b9\u30c8\u3060\u3051\u3092\u5951\u7d04\u3057\u3001\u5185\u90e8\u69cb\u9020\u306f\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5883\u754c\u306b\u59d4\u306d\u308b\u305f\u3081\u8ffd\u52a0\u30ad\u30fc\u5236\u7d04\u3092\u7f6e\u304b\u306a\u3044\u3002"
                    },
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 \u5546\u54c1\u3092\u8b58\u5225\u3059\u308bSKU\u3002Fake corpus\u3067\u306fASCII\u82f1\u6570\u30fb\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3067\u3001\u53d7\u6ce8\u660e\u7d30/\u30ab\u30fc\u30c8\u660e\u7d30\u306e\u7d50\u5408\u30ad\u30fc\u306b\u306a\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c26\u3002",
                        "type": "string",
                        "minLength": 0,
                        "maxLength": 64,
                        "example": "sample-001"
                    },
                    "classes": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u5546\u54c1\u898f\u683c\u4e00\u89a7",
                        "description": "/admin/product/product-class \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u5546\u54c1\u898f\u683c\u4e00\u89a7\u3002\u914d\u5217\u8981\u7d20\u306fALPS\u610f\u5473\u3068Fake\u89b3\u5bdf\u306b\u57fa\u3065\u304d\u3001\u56fa\u5b9a\u3067\u304d\u306a\u3044\u52d5\u7684\u5217\u306f\u4f8b\u5916\u7406\u7531\u3092\u53f0\u5e33\u5316\u3059\u308b\u3002",
                        "items": {
                            "type": "object",
                            "title": "\u5546\u54c1\u898f\u683c",
                            "description": "/admin/product/product-class \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u5546\u54c1\u898f\u683c\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `classes` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002",
                            "properties": {
                                "classNameId": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "title": "\u898f\u683c\u540dID",
                                    "description": "dtb_class_name.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e ClassNameEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f 32\u6841hex \u3092\u751f\u6210\u3057\u3001SQL \u5b9f\u88c5\u306f dtb_class_name.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u975e\u6570\u5024 ID \u306f SqlClassNameStorage \u3067\u306f miss \u3068\u3057\u3066\u6271\u308f\u308c getById / put / remove \u306e\u3044\u305a\u308c\u3082 404 \u7d4c\u8def\uff08\u898f\u683c\u540d\u306e\u66f4\u65b0\u30fb\u524a\u9664 Final\uff09\u3092\u8e0f\u3080\u305f\u3081\u3001\u30b7\u30fc\u30c9\u30cf\u30f3\u30c9\u30eb `nonexistent-zzz` \u306f Fake / SQL \u53cc\u65b9\u3067 404 \u304c\u540c\u5f62\u3002categoryId / blockId / tagId \u3068\u540c\u3058 Fake\u2194SQL \u4e8c\u91cd\u6027 Fake\u89b3\u5bdf\u6587\u5b57\u9577 7\u301c8; \u89b3\u5bdf\u5024 'cn-color', 'cn-size'\u3002",
                                    "example": "cn-color",
                                    "minLength": 0,
                                    "maxLength": 128,
                                    "pattern": "^[A-Za-z0-9._:@/-]*$",
                                    "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                                },
                                "classCategoryId": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "title": "\u898f\u683c\u5206\u985eID",
                                    "description": "dtb_class_category.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e ClassCategoryEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f 32\u6841hex \u3092\u751f\u6210\u3057\u3001SQL \u5b9f\u88c5\u306f dtb_class_category.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u975e\u6570\u5024 ID \u306f SqlClassCategoryStorage \u3067\u306f miss \u3068\u3057\u3066\u6271\u308f\u308c getById / put / remove \u306e\u3044\u305a\u308c\u3082 404 \u7d4c\u8def\uff08\u898f\u683c\u5206\u985e\u306e\u66f4\u65b0\u30fb\u524a\u9664 Final\uff09\u3092\u8e0f\u3080\u305f\u3081\u3001\u30b7\u30fc\u30c9\u30cf\u30f3\u30c9\u30eb `nonexistent-zzz` \u306f Fake / SQL \u53cc\u65b9\u3067 404 \u304c\u540c\u5f62\u3002classNameId / categoryId / blockId / tagId \u3068\u540c\u3058 Fake\u2194SQL \u4e8c\u91cd\u6027 Fake\u89b3\u5bdf\u6587\u5b57\u9577 6\u301c8; \u89b3\u5bdf\u5024 'cc-red', 'cc-blue', 'cc-small'\u3002",
                                    "example": "cc-red",
                                    "minLength": 0,
                                    "maxLength": 128,
                                    "pattern": "^[A-Za-z0-9._:@/-]*$",
                                    "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                                },
                                "className": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 255,
                                    "title": "\u898f\u683c\u540d",
                                    "description": "/admin/product/product-class \u306e\u753b\u9762\u8868\u793a\u306b\u4f7f\u3046\u898f\u683c\u540d\u3002\u696d\u52d9\u30a8\u30f3\u30c6\u30a3\u30c6\u30a3\u305d\u306e\u3082\u306e\u3067\u306f\u306a\u304f\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8/\u4e00\u89a7\u8868\u793a\u306e\u88dc\u52a9\u5024\u3002"
                                },
                                "classCategoryName": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 255,
                                    "title": "\u898f\u683c\u5206\u985e\u540d",
                                    "description": "\u5546\u54c1\u30d0\u30ea\u30a8\u30fc\u30b7\u30e7\u30f3\u8ef8\u306e\u5177\u4f53\u7684\u306a\u5024\uff08\u4f8b: \u8d64\u3001L\u30b5\u30a4\u30ba\uff09\u3002EC-CUBE\u306e\"classCategory\"\u306fOOP\u306e\u30ab\u30c6\u30b4\u30ea\u3067\u306f\u306a\u304f\u898f\u683c\u5024\u3092\u610f\u5473\u3059\u308b"
                                },
                                "productCode": {
                                    "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                                    "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 \u5546\u54c1\u3092\u8b58\u5225\u3059\u308bSKU\u3002Fake corpus\u3067\u306fASCII\u82f1\u6570\u30fb\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3067\u3001\u53d7\u6ce8\u660e\u7d30/\u30ab\u30fc\u30c8\u660e\u7d30\u306e\u7d50\u5408\u30ad\u30fc\u306b\u306a\u308b\u3002 Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c26\u3002",
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 64,
                                    "example": "sample-001"
                                },
                                "stock": {
                                    "type": [
                                        "integer",
                                        "null"
                                    ],
                                    "minimum": 0,
                                    "maximum": 2147483647,
                                    "title": "\u5728\u5eab\u6570",
                                    "description": "\u7269\u7406\u5728\u5eab\u6570\u3002stockUnlimited=true\u306e\u5834\u5408\u306f\u7121\u8996\u3055\u308c\u308b\u3002\u6ce8\u6587\u78ba\u5b9a\u6642\u306b\u5f15\u304d\u5f53\u3066\u304c\u884c\u308f\u308c\u308b Fake\u89b3\u5bdf\u6570\u5024 0\u301c100; \u89b3\u5bdf\u5024 '0', '10', '20', '50', '5', '7', '100', '3'; null 9/73\u3002",
                                    "example": 0
                                },
                                "price02": {
                                    "title": "\u8ca9\u58f2\u4fa1\u683c",
                                    "description": "\u5b9f\u969b\u306e\u8ca9\u58f2\u4fa1\u683c\uff08\u7a0e\u629c\uff09\u3002\u7a0e\u8a08\u7b97\u30fb\u5c0f\u8a08\u8a08\u7b97\u306e\u30d9\u30fc\u30b9 Fake\u89b3\u5bdf\u6570\u5024 800\u301c28000\u3002",
                                    "type": [
                                        "integer",
                                        "null"
                                    ],
                                    "minimum": 0,
                                    "maximum": 999999999,
                                    "example": 3500
                                }
                            },
                            "additionalProperties": false,
                            "$comment": "\u914d\u5217\u8981\u7d20\u306fFake/Resource\u3067\u89b3\u5bdf\u3055\u308c\u305f\u65e2\u77e5property\u306b\u56fa\u5b9a\u3059\u308b\u3002\u65b0\u3057\u3044\u5217\u304c\u5fc5\u8981\u306b\u306a\u3063\u305f\u5834\u5408\u306fSemantic-Ex\u89b3\u5bdf\u306b\u8ffd\u52a0\u3057\u3066schema\u3092\u66f4\u65b0\u3059\u308b\u3002"
                        },
                        "minItems": 0
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "csrfToken",
                    "productCode",
                    "classes"
                ]
            },
            "POST/admin/product/product-classResponse": {
                "title": "POST /admin/product/product-class response",
                "description": "POST /admin/product/product-class response \u306e response body schema\u3002\u5546\u54c1\u898f\u683c(SKU)\u767b\u9332\u306e\u7d50\u679c\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "productClassId": {
                        "title": "\u5546\u54c1\u898f\u683cID",
                        "description": "\u767b\u9332\u3055\u308c\u305f dtb_product_class.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e RegisteredProductClassEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f\u63a1\u756a\u30d5\u30a3\u30af\u30b9\u30c1\u30e3\u5024\u3092\u8fd4\u3057\u3001SQL \u5b9f\u88c5\u306f dtb_product_class.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002classCategoryId / deliveryId \u3068\u540c\u3058 Fake\u2194SQL \u4e8c\u91cd\u6027\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "pc-fake-next"
                    },
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "\u767b\u9332\u3057\u305f\u898f\u683c(SKU)\u306e\u89aa\u5546\u54c1\u3092\u8b58\u5225\u3059\u308bSKU/\u54c1\u756a\u3002\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u306e\u7d50\u5408\u30ad\u30fc\u3002",
                        "type": "string",
                        "minLength": 0,
                        "maxLength": 64,
                        "example": "sample-001"
                    }
                },
                "additionalProperties": false,
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "productClassId",
                    "productCode"
                ]
            },
            "DELETE/admin/tag/tagResponse": {
                "title": "DELETE /admin/tag/tag response",
                "description": "DELETE /admin/tag/tag response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "tagId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u30bf\u30b0ID",
                        "description": "dtb_tag.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e TagEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f `tg-` \u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9\u4ed8\u304d\u306e\u82f1\u6570\u5b57\u3092\u751f\u6210\u3057\u3001SQL \u5b9f\u88c5\u306f dtb_tag.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u975e\u6570\u5024 ID \u306f SqlTagStorage \u3067\u306f miss \u3068\u3057\u3066\u6271\u308f\u308c getById / put / remove \u306e\u3044\u305a\u308c\u3082 404 \u7d4c\u8def (TagDeleted) \u3092\u8e0f\u3080\u305f\u3081\u3001\u30b7\u30fc\u30c9\u30cf\u30f3\u30c9\u30eb `tg-new` / `tg-sale` \u306f Fake \u5c02\u7528 Fake\u89b3\u5bdf\u6587\u5b57\u9577 6\u301c7; \u89b3\u5bdf\u5024 'tg-new', 'tg-sale'\u3002",
                        "example": "tg-new",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "tagId"
                ]
            },
            "GET/admin/tag/tag-listResponse": {
                "title": "GET /admin/tag/tag-list response",
                "description": "GET /admin/tag/tag-list response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "form": {
                        "type": [
                            "object",
                            "array",
                            "null"
                        ],
                        "title": "\u5165\u529b\u30d5\u30a9\u30fc\u30e0",
                        "description": "Aura/WebForm\u7531\u6765\u306e\u30d5\u30a9\u30fc\u30e0\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3002\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5185\u90e8\u69cb\u9020\u306e\u305f\u3081schema\u3067\u306f\u5b58\u5728\u3068\u578b\u306e\u307f\u3092\u5951\u7d04\u3059\u308b\u3002",
                        "$comment": "Aura/WebForm\u7531\u6765\u306e\u4e0d\u900f\u660e\u30d5\u30a9\u30fc\u30e0\u8868\u73fe\u3002Resource\u5883\u754c\u3067\u306f\u30d5\u30a9\u30fc\u30e0\u306e\u5b58\u5728\u3068\u30b3\u30f3\u30c6\u30ad\u30b9\u30c8\u3060\u3051\u3092\u5951\u7d04\u3057\u3001\u5185\u90e8\u69cb\u9020\u306f\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5883\u754c\u306b\u59d4\u306d\u308b\u305f\u3081\u8ffd\u52a0\u30ad\u30fc\u5236\u7d04\u3092\u7f6e\u304b\u306a\u3044\u3002"
                    },
                    "count": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 2147483647,
                        "title": "\u4ef6\u6570",
                        "description": "/admin/tag/tag-list \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8fd4\u3059\u4ef6\u6570\u3002\u4e00\u89a7\u30fb\u96c6\u8a08\u30fb\u51e6\u7406\u7d50\u679c\u306e\u898f\u6a21\u3092\u8868\u3059\u975e\u8ca0\u6574\u6570\u3002"
                    },
                    "tags": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u30bf\u30b0\u4e00\u89a7",
                        "description": "/admin/tag/tag-list \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u30bf\u30b0\u4e00\u89a7\u3002\u914d\u5217\u8981\u7d20\u306fALPS\u610f\u5473\u3068Fake\u89b3\u5bdf\u306b\u57fa\u3065\u304d\u3001\u56fa\u5b9a\u3067\u304d\u306a\u3044\u52d5\u7684\u5217\u306f\u4f8b\u5916\u7406\u7531\u3092\u53f0\u5e33\u5316\u3059\u308b\u3002",
                        "items": {
                            "type": [
                                "object",
                                "null"
                            ],
                            "title": "\u30bf\u30b0",
                            "description": "/admin/tag/tag-list \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u30bf\u30b0\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `tags` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002",
                            "properties": {
                                "tagId": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "title": "\u30bf\u30b0ID",
                                    "description": "dtb_tag.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e TagEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f `tg-` \u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9\u4ed8\u304d\u306e\u82f1\u6570\u5b57\u3092\u751f\u6210\u3057\u3001SQL \u5b9f\u88c5\u306f dtb_tag.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u975e\u6570\u5024 ID \u306f SqlTagStorage \u3067\u306f miss \u3068\u3057\u3066\u6271\u308f\u308c getById / put / remove \u306e\u3044\u305a\u308c\u3082 404 \u7d4c\u8def (TagDeleted) \u3092\u8e0f\u3080\u305f\u3081\u3001\u30b7\u30fc\u30c9\u30cf\u30f3\u30c9\u30eb `tg-new` / `tg-sale` \u306f Fake \u5c02\u7528 Fake\u89b3\u5bdf\u6587\u5b57\u9577 6\u301c7; \u89b3\u5bdf\u5024 'tg-new', 'tg-sale'\u3002",
                                    "example": "tg-new",
                                    "minLength": 0,
                                    "maxLength": 128,
                                    "pattern": "^[A-Za-z0-9._:@/-]*$",
                                    "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                                },
                                "tagName": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 32,
                                    "title": "\u30bf\u30b0\u540d",
                                    "description": "\u5546\u54c1\u306b\u4ed8\u4e0e\u3059\u308b\u30bf\u30b0\u306e\u8868\u793a\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 3\u301c3; \u89b3\u5bdf\u5024 '\u65b0\u5546\u54c1', '\u30bb\u30fc\u30eb'\u3002",
                                    "example": "\u65b0\u5546\u54c1"
                                }
                            },
                            "additionalProperties": false,
                            "$comment": "\u914d\u5217\u8981\u7d20\u306fFake/Resource\u3067\u89b3\u5bdf\u3055\u308c\u305f\u65e2\u77e5property\u306b\u56fa\u5b9a\u3059\u308b\u3002\u65b0\u3057\u3044\u5217\u304c\u5fc5\u8981\u306b\u306a\u3063\u305f\u5834\u5408\u306fSemantic-Ex\u89b3\u5bdf\u306b\u8ffd\u52a0\u3057\u3066schema\u3092\u66f4\u65b0\u3059\u308b\u3002"
                        },
                        "minItems": 0
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "count",
                    "tags",
                    "csrfToken"
                ]
            },
            "POST/admin/tag/tag-listResponse": {
                "title": "POST /admin/tag/tag-list response",
                "description": "POST /admin/tag/tag-list response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "tagId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u30bf\u30b0ID",
                        "description": "dtb_tag.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e TagEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f `tg-` \u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9\u4ed8\u304d\u306e\u82f1\u6570\u5b57\u3092\u751f\u6210\u3057\u3001SQL \u5b9f\u88c5\u306f dtb_tag.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u975e\u6570\u5024 ID \u306f SqlTagStorage \u3067\u306f miss \u3068\u3057\u3066\u6271\u308f\u308c getById / put / remove \u306e\u3044\u305a\u308c\u3082 404 \u7d4c\u8def (TagDeleted) \u3092\u8e0f\u3080\u305f\u3081\u3001\u30b7\u30fc\u30c9\u30cf\u30f3\u30c9\u30eb `tg-new` / `tg-sale` \u306f Fake \u5c02\u7528 Fake\u89b3\u5bdf\u6587\u5b57\u9577 6\u301c7; \u89b3\u5bdf\u5024 'tg-new', 'tg-sale'\u3002",
                        "example": "tg-new",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    },
                    "tagName": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u30bf\u30b0\u540d",
                        "description": "\u5546\u54c1\u306b\u4ed8\u4e0e\u3059\u308b\u30bf\u30b0\u306e\u8868\u793a\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 3\u301c3; \u89b3\u5bdf\u5024 '\u65b0\u5546\u54c1', '\u30bb\u30fc\u30eb'\u3002",
                        "example": "\u65b0\u5546\u54c1"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "tagId",
                    "tagName"
                ]
            },
            "DELETE/admin/tax-rule/tax-ruleResponse": {
                "title": "DELETE /admin/tax-rule/tax-rule response",
                "description": "DELETE /admin/tax-rule/tax-rule response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "taxRuleId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u7a0e\u7387\u30eb\u30fc\u30ebID",
                        "description": "dtb_tax_rule.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e TaxRuleEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f 32\u6841hex \u3092\u751f\u6210\u3057\u3001SQL \u5b9f\u88c5\u306f dtb_tax_rule.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u975e\u6570\u5024 ID \u306f SqlTaxRuleStorage \u3067\u306f miss \u3068\u3057\u3066\u6271\u308f\u308c getById / put / remove \u306e\u3044\u305a\u308c\u3082 404 \u7d4c\u8def (TaxRuleDeleted) \u3092\u8e0f\u3080\u305f\u3081\u3001\u30b7\u30fc\u30c9\u30cf\u30f3\u30c9\u30eb\uff08`nonexistent-zzz` \u7b49\uff09\u306f Fake / SQL \u53cc\u65b9\u3067 404 \u304c\u540c\u5f62 Fake\u89b3\u5bdf\u6587\u5b57\u9577 5\u301c6; \u89b3\u5bdf\u5024 'tax-10', 'tax-8'\u3002",
                        "example": "tax-10",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "taxRuleId"
                ]
            },
            "GET/admin/tax-rule/tax-rule-listResponse": {
                "title": "GET /admin/tax-rule/tax-rule-list response",
                "description": "GET /admin/tax-rule/tax-rule-list response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "form": {
                        "type": [
                            "object",
                            "array",
                            "null"
                        ],
                        "title": "\u5165\u529b\u30d5\u30a9\u30fc\u30e0",
                        "description": "Aura/WebForm\u7531\u6765\u306e\u30d5\u30a9\u30fc\u30e0\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3002\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5185\u90e8\u69cb\u9020\u306e\u305f\u3081schema\u3067\u306f\u5b58\u5728\u3068\u578b\u306e\u307f\u3092\u5951\u7d04\u3059\u308b\u3002",
                        "$comment": "Aura/WebForm\u7531\u6765\u306e\u4e0d\u900f\u660e\u30d5\u30a9\u30fc\u30e0\u8868\u73fe\u3002Resource\u5883\u754c\u3067\u306f\u30d5\u30a9\u30fc\u30e0\u306e\u5b58\u5728\u3068\u30b3\u30f3\u30c6\u30ad\u30b9\u30c8\u3060\u3051\u3092\u5951\u7d04\u3057\u3001\u5185\u90e8\u69cb\u9020\u306f\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5883\u754c\u306b\u59d4\u306d\u308b\u305f\u3081\u8ffd\u52a0\u30ad\u30fc\u5236\u7d04\u3092\u7f6e\u304b\u306a\u3044\u3002"
                    },
                    "taxRules": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u7a0e\u30eb\u30fc\u30eb\u4e00\u89a7",
                        "description": "/admin/tax-rule/tax-rule-list \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u7a0e\u30eb\u30fc\u30eb\u4e00\u89a7\u3002\u914d\u5217\u8981\u7d20\u306fALPS\u610f\u5473\u3068Fake\u89b3\u5bdf\u306b\u57fa\u3065\u304d\u3001\u56fa\u5b9a\u3067\u304d\u306a\u3044\u52d5\u7684\u5217\u306f\u4f8b\u5916\u7406\u7531\u3092\u53f0\u5e33\u5316\u3059\u308b\u3002",
                        "items": {
                            "type": [
                                "object",
                                "null"
                            ],
                            "title": "\u7a0e\u30eb\u30fc\u30eb",
                            "description": "/admin/tax-rule/tax-rule-list \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u7a0e\u30eb\u30fc\u30eb\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `taxRules` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002",
                            "properties": {
                                "roundingType": {
                                    "type": [
                                        "integer",
                                        "null"
                                    ],
                                    "minimum": 1,
                                    "maximum": 99,
                                    "title": "\u7aef\u6570\u51e6\u7406",
                                    "description": "1=\u56db\u6368\u4e94\u5165, 2=\u5207\u308a\u6368\u3066, 3=\u5207\u308a\u4e0a\u3052\u3002\u53d7\u6ce8\u660e\u7d30\u306e\u7a0e\u984d\u8a08\u7b97\u6642\u306e\u7aef\u6570\u51e6\u7406\u65b9\u5f0f\u3002TaxRule\u3067\u8a2d\u5b9a Fake\u89b3\u5bdf\u6570\u5024 1\u301c1; \u89b3\u5bdf\u5024 '1'\u3002",
                                    "example": 1
                                },
                                "taxRate": {
                                    "type": [
                                        "number",
                                        "null"
                                    ],
                                    "minimum": 0,
                                    "maximum": 100,
                                    "title": "\u7a0e\u7387",
                                    "description": "\u7a0e\u30eb\u30fc\u30eb\u306b\u9069\u7528\u3059\u308b\u7a0e\u7387\u30028.0\u308410.0\u306e\u3088\u3046\u306a\u5c0f\u6570\u8868\u73fe\u3092\u542b\u3080\u767e\u5206\u7387\u3002",
                                    "example": 10
                                },
                                "taxRuleId": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "title": "\u7a0e\u7387\u30eb\u30fc\u30ebID",
                                    "description": "dtb_tax_rule.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e TaxRuleEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f 32\u6841hex \u3092\u751f\u6210\u3057\u3001SQL \u5b9f\u88c5\u306f dtb_tax_rule.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u975e\u6570\u5024 ID \u306f SqlTaxRuleStorage \u3067\u306f miss \u3068\u3057\u3066\u6271\u308f\u308c getById / put / remove \u306e\u3044\u305a\u308c\u3082 404 \u7d4c\u8def (TaxRuleDeleted) \u3092\u8e0f\u3080\u305f\u3081\u3001\u30b7\u30fc\u30c9\u30cf\u30f3\u30c9\u30eb\uff08`nonexistent-zzz` \u7b49\uff09\u306f Fake / SQL \u53cc\u65b9\u3067 404 \u304c\u540c\u5f62 Fake\u89b3\u5bdf\u6587\u5b57\u9577 5\u301c6; \u89b3\u5bdf\u5024 'tax-10', 'tax-8'\u3002",
                                    "example": "tax-10",
                                    "minLength": 0,
                                    "maxLength": 128,
                                    "pattern": "^[A-Za-z0-9._:@/-]*$",
                                    "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                                },
                                "applyDate": {
                                    "title": "\u9069\u7528\u65e5",
                                    "description": "\u3053\u306e\u7a0e\u7387\u30eb\u30fc\u30eb\u304c\u6709\u52b9\u306b\u306a\u308b\u65e5\u6642\u3002\u9069\u7528\u65e5\u4ee5\u964d\u306e\u6ce8\u6587\u306b\u3053\u306e\u7a0e\u7387\u304c\u9069\u7528\u3055\u308c\u308b\u3002\u8907\u6570\u306e\u7a0e\u7387\u30eb\u30fc\u30eb\u304c\u3042\u308b\u5834\u5408\u3001\u6ce8\u6587\u65e5\u6642\u70b9\u3067\u6700\u3082\u65b0\u3057\u3044\u9069\u7528\u65e5\u306e\u30eb\u30fc\u30eb\u304c\u4f7f\u7528\u3055\u308c\u308b\u3002\u904e\u53bb\u306e\u53d7\u6ce8\u306b\u306f\u5f71\u97ff\u3057\u306a\u3044 Fake\u89b3\u5bdf\u6587\u5b57\u9577 25\u301c25; \u89b3\u5bdf\u5024 '2024-04-01T00:00:00+09:00', '2023-10-01T00:00:00+09:00'\u3002",
                                    "type": "string",
                                    "example": "2024-04-01T00:00:00+09:00",
                                    "$comment": "\u672a\u5165\u91d1\u30fb\u672a\u767a\u9001\u30fb\u672a\u516c\u958b\u306a\u3069\u672a\u78ba\u5b9a\u65e5\u6642\u306fEC-CUBE\u5883\u754c\u3067\u7a7a\u6587\u5b57\u3068\u3057\u3066\u73fe\u308c\u308b\u305f\u3081\u3001\u65e5\u4ed8/\u65e5\u6642\u6587\u5b57\u5217\u306b\u52a0\u3048\u3066\u7a7a\u6587\u5b57\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                                    "pattern": "^$|\\d{4}-\\d{2}-\\d{2}([ T]\\d{2}:\\d{2}:\\d{2}([+-]\\d{2}:?\\d{2}|Z)?)?$"
                                }
                            },
                            "additionalProperties": false,
                            "$comment": "\u914d\u5217\u8981\u7d20\u306fFake/Resource\u3067\u89b3\u5bdf\u3055\u308c\u305f\u65e2\u77e5property\u306b\u56fa\u5b9a\u3059\u308b\u3002\u65b0\u3057\u3044\u5217\u304c\u5fc5\u8981\u306b\u306a\u3063\u305f\u5834\u5408\u306fSemantic-Ex\u89b3\u5bdf\u306b\u8ffd\u52a0\u3057\u3066schema\u3092\u66f4\u65b0\u3059\u308b\u3002"
                        },
                        "minItems": 0
                    },
                    "count": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 2147483647,
                        "title": "\u4ef6\u6570",
                        "description": "/admin/tax-rule/tax-rule-list \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8fd4\u3059\u4ef6\u6570\u3002\u4e00\u89a7\u30fb\u96c6\u8a08\u30fb\u51e6\u7406\u7d50\u679c\u306e\u898f\u6a21\u3092\u8868\u3059\u975e\u8ca0\u6574\u6570\u3002"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u4e00\u89a7\u753b\u9762\u304b\u3089\u9001\u4fe1\u3059\u308b\u4f5c\u6210\u30fb\u524a\u9664\u30d5\u30a9\u30fc\u30e0\u7528\u306eCSRF\u30c8\u30fc\u30af\u30f3\u3002",
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]*$"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "taxRules",
                    "count",
                    "csrfToken"
                ]
            },
            "POST/admin/tax-rule/tax-rule-listResponse": {
                "title": "POST /admin/tax-rule/tax-rule-list response",
                "description": "POST /admin/tax-rule/tax-rule-list response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "roundingType": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 1,
                        "maximum": 99,
                        "title": "\u7aef\u6570\u51e6\u7406",
                        "description": "1=\u56db\u6368\u4e94\u5165, 2=\u5207\u308a\u6368\u3066, 3=\u5207\u308a\u4e0a\u3052\u3002\u53d7\u6ce8\u660e\u7d30\u306e\u7a0e\u984d\u8a08\u7b97\u6642\u306e\u7aef\u6570\u51e6\u7406\u65b9\u5f0f\u3002TaxRule\u3067\u8a2d\u5b9a Fake\u89b3\u5bdf\u6570\u5024 1\u301c1; \u89b3\u5bdf\u5024 '1'\u3002",
                        "example": 1
                    },
                    "taxRate": {
                        "type": [
                            "number",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 100,
                        "title": "\u7a0e\u7387",
                        "description": "\u7a0e\u30eb\u30fc\u30eb\u306b\u9069\u7528\u3059\u308b\u7a0e\u7387\u30028.0\u308410.0\u306e\u3088\u3046\u306a\u5c0f\u6570\u8868\u73fe\u3092\u542b\u3080\u767e\u5206\u7387\u3002",
                        "example": 10
                    },
                    "taxRuleId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u7a0e\u7387\u30eb\u30fc\u30ebID",
                        "description": "dtb_tax_rule.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e TaxRuleEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f 32\u6841hex \u3092\u751f\u6210\u3057\u3001SQL \u5b9f\u88c5\u306f dtb_tax_rule.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002\u975e\u6570\u5024 ID \u306f SqlTaxRuleStorage \u3067\u306f miss \u3068\u3057\u3066\u6271\u308f\u308c getById / put / remove \u306e\u3044\u305a\u308c\u3082 404 \u7d4c\u8def (TaxRuleDeleted) \u3092\u8e0f\u3080\u305f\u3081\u3001\u30b7\u30fc\u30c9\u30cf\u30f3\u30c9\u30eb\uff08`nonexistent-zzz` \u7b49\uff09\u306f Fake / SQL \u53cc\u65b9\u3067 404 \u304c\u540c\u5f62 Fake\u89b3\u5bdf\u6587\u5b57\u9577 5\u301c6; \u89b3\u5bdf\u5024 'tax-10', 'tax-8'\u3002",
                        "example": "tax-10",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    },
                    "applyDate": {
                        "title": "\u9069\u7528\u65e5",
                        "description": "\u3053\u306e\u7a0e\u7387\u30eb\u30fc\u30eb\u304c\u6709\u52b9\u306b\u306a\u308b\u65e5\u6642\u3002\u9069\u7528\u65e5\u4ee5\u964d\u306e\u6ce8\u6587\u306b\u3053\u306e\u7a0e\u7387\u304c\u9069\u7528\u3055\u308c\u308b\u3002\u8907\u6570\u306e\u7a0e\u7387\u30eb\u30fc\u30eb\u304c\u3042\u308b\u5834\u5408\u3001\u6ce8\u6587\u65e5\u6642\u70b9\u3067\u6700\u3082\u65b0\u3057\u3044\u9069\u7528\u65e5\u306e\u30eb\u30fc\u30eb\u304c\u4f7f\u7528\u3055\u308c\u308b\u3002\u904e\u53bb\u306e\u53d7\u6ce8\u306b\u306f\u5f71\u97ff\u3057\u306a\u3044 Fake\u89b3\u5bdf\u6587\u5b57\u9577 25\u301c25; \u89b3\u5bdf\u5024 '2024-04-01T00:00:00+09:00', '2023-10-01T00:00:00+09:00'\u3002",
                        "type": "string",
                        "example": "2024-04-01T00:00:00+09:00",
                        "$comment": "\u672a\u5165\u91d1\u30fb\u672a\u767a\u9001\u30fb\u672a\u516c\u958b\u306a\u3069\u672a\u78ba\u5b9a\u65e5\u6642\u306fEC-CUBE\u5883\u754c\u3067\u7a7a\u6587\u5b57\u3068\u3057\u3066\u73fe\u308c\u308b\u305f\u3081\u3001\u65e5\u4ed8/\u65e5\u6642\u6587\u5b57\u5217\u306b\u52a0\u3048\u3066\u7a7a\u6587\u5b57\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "pattern": "^$|\\d{4}-\\d{2}-\\d{2}([ T]\\d{2}:\\d{2}:\\d{2}([+-]\\d{2}:?\\d{2}|Z)?)?$"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "roundingType",
                    "taxRate",
                    "taxRuleId",
                    "applyDate"
                ]
            },
            "GET/admin/template/template-addResponse": {
                "title": "GET /admin/template/template-add response",
                "description": "GET /admin/template/template-add response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "form": {
                        "type": [
                            "object",
                            "array",
                            "null"
                        ],
                        "title": "\u5165\u529b\u30d5\u30a9\u30fc\u30e0",
                        "description": "Aura/WebForm\u7531\u6765\u306e\u30d5\u30a9\u30fc\u30e0\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3002\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5185\u90e8\u69cb\u9020\u306e\u305f\u3081schema\u3067\u306f\u5b58\u5728\u3068\u578b\u306e\u307f\u3092\u5951\u7d04\u3059\u308b\u3002",
                        "$comment": "Aura/WebForm\u7531\u6765\u306e\u4e0d\u900f\u660e\u30d5\u30a9\u30fc\u30e0\u8868\u73fe\u3002Resource\u5883\u754c\u3067\u306f\u30d5\u30a9\u30fc\u30e0\u306e\u5b58\u5728\u3068\u30b3\u30f3\u30c6\u30ad\u30b9\u30c8\u3060\u3051\u3092\u5951\u7d04\u3057\u3001\u5185\u90e8\u69cb\u9020\u306f\u30d5\u30ec\u30fc\u30e0\u30ef\u30fc\u30af\u5883\u754c\u306b\u59d4\u306d\u308b\u305f\u3081\u8ffd\u52a0\u30ad\u30fc\u5236\u7d04\u3092\u7f6e\u304b\u306a\u3044\u3002"
                    },
                    "csrfToken": {
                        "$ref": "#/$defs/csrfToken"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape."
            },
            "POST/admin/template/template-addResponse": {
                "title": "POST /admin/template/template-add response",
                "description": "POST /admin/template/template-add response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "message": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u51e6\u7406\u30e1\u30c3\u30bb\u30fc\u30b8",
                        "description": "/admin/template/template-add \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u51e6\u7406\u7d50\u679c\u30e1\u30c3\u30bb\u30fc\u30b8\u3002\u6ce8\u6587\u6642\u304a\u554f\u3044\u5408\u308f\u305b\u6b04\u3067\u306f\u306a\u304f\u3001\u753b\u9762\u9077\u79fb\u3084\u5b8c\u4e86\u8868\u793a\u306e\u305f\u3081\u306e\u901a\u77e5\u6587\u3002",
                        "example": "\u914d\u9001\u306f\u5e73\u65e5\u5e0c\u671b\u3067\u3059\u3002"
                    },
                    "templateId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8ID",
                        "description": "dtb_template.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e TemplateEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f `tp-` \u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9\u4ed8\u304d\u306e\u30b7\u30fc\u30c9\u30cf\u30f3\u30c9\u30eb\uff08tp-default-pc / tp-default-sp\uff09\u3092\u6301\u3061\u3001SQL \u5b9f\u88c5\u306f dtb_template.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002Template \u306b\u306f list \u30a2\u30d5\u30a9\u30fc\u30c0\u30f3\u30b9\u306e\u307f\uff08goTemplateList\uff09\u3067\u4f5c\u6210\u30fb\u66f4\u65b0\u30fb\u524a\u9664\u304c\u7121\u3044\u305f\u3081 ID \u30b8\u30a7\u30cd\u30ec\u30fc\u30bf\u306f\u5b58\u5728\u305b\u305a\u3001\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u306f\u30a4\u30f3\u30b9\u30c8\u30fc\u30e9/fixture \u304c seed \u3057\u305f\u884c\u304b\u3089\u8aad\u307f\u51fa\u3059\u306e\u307f\u3002layoutId / blockId / categoryId \u3068\u540c\u3058 Fake\u2194SQL \u4e8c\u91cd\u6027\u3002templateCode\uff08\u4e00\u610f\u306e install-time \u30b3\u30fc\u30c9\uff09\u3068\u306f\u5225\u7269 \u2014 TemplateEntity \u306e\u6295\u5f71\u306f id \u30cf\u30f3\u30c9\u30eb\u3092\u7528\u3044 templateCode \u306f\u6295\u5f71\u5916 Fake\u89b3\u5bdf\u6587\u5b57\u9577 13\u301c13; \u89b3\u5bdf\u5024 'tp-default-pc', 'tp-default-sp'\u3002",
                        "example": "tp-default-pc",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    },
                    "archiveName": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 255,
                        "title": "\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u30a2\u30fc\u30ab\u30a4\u30d6\u540d",
                        "description": "\u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u3055\u308c\u305f\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8zip\u306e\u30d5\u30a1\u30a4\u30eb\u540d\u3002"
                    },
                    "archiveSize": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 10485760,
                        "title": "\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u30a2\u30fc\u30ab\u30a4\u30d6\u30b5\u30a4\u30ba",
                        "description": "\u30a2\u30c3\u30d7\u30ed\u30fc\u30c9\u3055\u308c\u305f\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8zip\u306e\u30d0\u30a4\u30c8\u30b5\u30a4\u30ba\u3002"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "\u3053\u306e\u30ec\u30b9\u30dd\u30f3\u30b9/\u64cd\u4f5c\u304c\u5bfe\u5fdc\u3059\u308bALPS\u9077\u79fbID\u3002\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u306e\u72b6\u614b\u9077\u79fb\u8ffd\u8de1\u306b\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "templateId",
                    "transitionId"
                ]
            },
            "GET/admin/template/template-listResponse": {
                "title": "GET /admin/template/template-list response",
                "description": "GET /admin/template/template-list response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "count": {
                        "type": [
                            "integer",
                            "null"
                        ],
                        "minimum": 0,
                        "maximum": 2147483647,
                        "title": "\u4ef6\u6570",
                        "description": "/admin/template/template-list \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8fd4\u3059\u4ef6\u6570\u3002\u4e00\u89a7\u30fb\u96c6\u8a08\u30fb\u51e6\u7406\u7d50\u679c\u306e\u898f\u6a21\u3092\u8868\u3059\u975e\u8ca0\u6574\u6570\u3002"
                    },
                    "templates": {
                        "type": [
                            "array",
                            "null"
                        ],
                        "title": "\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u4e00\u89a7",
                        "description": "/admin/template/template-list \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u6271\u3046\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u4e00\u89a7\u3002\u914d\u5217\u8981\u7d20\u306fALPS\u610f\u5473\u3068Fake\u89b3\u5bdf\u306b\u57fa\u3065\u304d\u3001\u56fa\u5b9a\u3067\u304d\u306a\u3044\u52d5\u7684\u5217\u306f\u4f8b\u5916\u7406\u7531\u3092\u53f0\u5e33\u5316\u3059\u308b\u3002",
                        "items": {
                            "type": [
                                "object",
                                "null"
                            ],
                            "title": "\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8",
                            "description": "/admin/template/template-list \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u3002\u89aa\u30b3\u30ec\u30af\u30b7\u30e7\u30f3 `templates` \u306e1\u884c\u3092\u8868\u3057\u3001\u56fa\u5b9a\u3067\u304d\u308b\u696d\u52d9\u5217\u306fschema property\u3067\u660e\u793a\u3059\u308b\u3002",
                            "properties": {
                                "deviceType": {
                                    "type": [
                                        "integer",
                                        "null"
                                    ],
                                    "title": "\u30c7\u30d0\u30a4\u30b9\u7a2e\u5225",
                                    "description": "\u30c7\u30d0\u30a4\u30b9\u7a2e\u5225\u30de\u30b9\u30bf\uff08EC-CUBE 2.x\u304b\u3089\u306e\u540d\u6b8b\uff09\u3002\u5024: 2=\u30e2\u30d0\u30a4\u30eb, 10=PC\u3002\u975e\u9023\u756a\u306eID\u306f\u65e7\u30d0\u30fc\u30b8\u30e7\u30f3\u306e\u30c7\u30d0\u30a4\u30b9\u30b5\u30dd\u30fc\u30c8\uff08\u30ac\u30e9\u30b1\u30fc\u7b49\uff09\u306b\u7531\u6765\u3002\u30da\u30fc\u30b8\u30ec\u30a4\u30a2\u30a6\u30c8\u306e\u30c7\u30d0\u30a4\u30b9\u5225\u8868\u793a\u306b\u4f7f\u7528 Fake\u89b3\u5bdf\u6570\u5024 2\u301c10; \u89b3\u5bdf\u5024 '10', '2'\u3002",
                                    "example": 10,
                                    "minimum": 0
                                },
                                "templateId": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "title": "\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8ID",
                                    "description": "dtb_template.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e TemplateEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f `tp-` \u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9\u4ed8\u304d\u306e\u30b7\u30fc\u30c9\u30cf\u30f3\u30c9\u30eb\uff08tp-default-pc / tp-default-sp\uff09\u3092\u6301\u3061\u3001SQL \u5b9f\u88c5\u306f dtb_template.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002Template \u306b\u306f list \u30a2\u30d5\u30a9\u30fc\u30c0\u30f3\u30b9\u306e\u307f\uff08goTemplateList\uff09\u3067\u4f5c\u6210\u30fb\u66f4\u65b0\u30fb\u524a\u9664\u304c\u7121\u3044\u305f\u3081 ID \u30b8\u30a7\u30cd\u30ec\u30fc\u30bf\u306f\u5b58\u5728\u305b\u305a\u3001\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u306f\u30a4\u30f3\u30b9\u30c8\u30fc\u30e9/fixture \u304c seed \u3057\u305f\u884c\u304b\u3089\u8aad\u307f\u51fa\u3059\u306e\u307f\u3002layoutId / blockId / categoryId \u3068\u540c\u3058 Fake\u2194SQL \u4e8c\u91cd\u6027\u3002templateCode\uff08\u4e00\u610f\u306e install-time \u30b3\u30fc\u30c9\uff09\u3068\u306f\u5225\u7269 \u2014 TemplateEntity \u306e\u6295\u5f71\u306f id \u30cf\u30f3\u30c9\u30eb\u3092\u7528\u3044 templateCode \u306f\u6295\u5f71\u5916 Fake\u89b3\u5bdf\u6587\u5b57\u9577 13\u301c13; \u89b3\u5bdf\u5024 'tp-default-pc', 'tp-default-sp'\u3002",
                                    "example": "tp-default-pc",
                                    "minLength": 0,
                                    "maxLength": 128,
                                    "pattern": "^[A-Za-z0-9._:@/-]*$",
                                    "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                                },
                                "templateName": {
                                    "type": [
                                        "string",
                                        "null"
                                    ],
                                    "minLength": 0,
                                    "maxLength": 32,
                                    "title": "\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u540d",
                                    "description": "\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u306e\u8868\u793a\u540d Fake\u89b3\u5bdf\u6587\u5b57\u9577 10\u301c11; \u89b3\u5bdf\u5024 '\u30c7\u30d5\u30a9\u30eb\u30c8 (PC)', '\u30c7\u30d5\u30a9\u30eb\u30c8 (\u30b9\u30de\u30db)'\u3002",
                                    "example": "\u30c7\u30d5\u30a9\u30eb\u30c8 (PC)"
                                },
                                "active": {
                                    "type": [
                                        "boolean",
                                        "null"
                                    ],
                                    "title": "\u9069\u7528\u4e2d\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8",
                                    "description": "\u73fe\u5728\u9069\u7528\u3055\u308c\u3066\u3044\u308b\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u304b\u3069\u3046\u304b\u3002TemplateCompatibility \u306e runtime readback \u5883\u754c\u304b\u3089\u5c0e\u51fa\u3055\u308c\u3001HTML radio \u306e checked \u72b6\u614b\u306b\u5bfe\u5fdc\u3059\u308b\u3002",
                                    "example": true
                                }
                            },
                            "additionalProperties": false,
                            "$comment": "\u914d\u5217\u8981\u7d20\u306fFake/Resource\u3067\u89b3\u5bdf\u3055\u308c\u305f\u65e2\u77e5property\u306b\u56fa\u5b9a\u3059\u308b\u3002\u65b0\u3057\u3044\u5217\u304c\u5fc5\u8981\u306b\u306a\u3063\u305f\u5834\u5408\u306fSemantic-Ex\u89b3\u5bdf\u306b\u8ffd\u52a0\u3057\u3066schema\u3092\u66f4\u65b0\u3059\u308b\u3002"
                        },
                        "minItems": 0
                    },
                    "csrfToken": {
                        "$ref": "#/$defs/csrfToken"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "count",
                    "templates"
                ]
            },
            "PUT/admin/template/template-listResponse": {
                "title": "PUT /admin/template/template-list response",
                "description": "PUT /admin/template/template-list response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "message": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u51e6\u7406\u30e1\u30c3\u30bb\u30fc\u30b8",
                        "description": "/admin/template/template-list \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u51e6\u7406\u7d50\u679c\u30e1\u30c3\u30bb\u30fc\u30b8\u3002\u6ce8\u6587\u6642\u304a\u554f\u3044\u5408\u308f\u305b\u6b04\u3067\u306f\u306a\u304f\u3001\u753b\u9762\u9077\u79fb\u3084\u5b8c\u4e86\u8868\u793a\u306e\u305f\u3081\u306e\u901a\u77e5\u6587\u3002",
                        "example": "\u914d\u9001\u306f\u5e73\u65e5\u5e0c\u671b\u3067\u3059\u3002"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "\u3053\u306e\u30ec\u30b9\u30dd\u30f3\u30b9/\u64cd\u4f5c\u304c\u5bfe\u5fdc\u3059\u308bALPS\u9077\u79fbID\u3002\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u306e\u72b6\u614b\u9077\u79fb\u8ffd\u8de1\u306b\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "templateId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8ID",
                        "description": "dtb_template.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e TemplateEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f `tp-` \u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9\u4ed8\u304d\u306e\u30b7\u30fc\u30c9\u30cf\u30f3\u30c9\u30eb\uff08tp-default-pc / tp-default-sp\uff09\u3092\u6301\u3061\u3001SQL \u5b9f\u88c5\u306f dtb_template.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002Template \u306b\u306f list \u30a2\u30d5\u30a9\u30fc\u30c0\u30f3\u30b9\u306e\u307f\uff08goTemplateList\uff09\u3067\u4f5c\u6210\u30fb\u66f4\u65b0\u30fb\u524a\u9664\u304c\u7121\u3044\u305f\u3081 ID \u30b8\u30a7\u30cd\u30ec\u30fc\u30bf\u306f\u5b58\u5728\u305b\u305a\u3001\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u306f\u30a4\u30f3\u30b9\u30c8\u30fc\u30e9/fixture \u304c seed \u3057\u305f\u884c\u304b\u3089\u8aad\u307f\u51fa\u3059\u306e\u307f\u3002layoutId / blockId / categoryId \u3068\u540c\u3058 Fake\u2194SQL \u4e8c\u91cd\u6027\u3002templateCode\uff08\u4e00\u610f\u306e install-time \u30b3\u30fc\u30c9\uff09\u3068\u306f\u5225\u7269 \u2014 TemplateEntity \u306e\u6295\u5f71\u306f id \u30cf\u30f3\u30c9\u30eb\u3092\u7528\u3044 templateCode \u306f\u6295\u5f71\u5916 Fake\u89b3\u5bdf\u6587\u5b57\u9577 13\u301c13; \u89b3\u5bdf\u5024 'tp-default-pc', 'tp-default-sp'\u3002",
                        "example": "tp-default-pc",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "transitionId",
                    "templateId"
                ]
            },
            "DELETE/admin/template/template-listResponse": {
                "title": "DELETE /admin/template/template-list response",
                "description": "DELETE /admin/template/template-list response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "message": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u51e6\u7406\u30e1\u30c3\u30bb\u30fc\u30b8",
                        "description": "/admin/template/template-list \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u51e6\u7406\u7d50\u679c\u30e1\u30c3\u30bb\u30fc\u30b8\u3002\u6ce8\u6587\u6642\u304a\u554f\u3044\u5408\u308f\u305b\u6b04\u3067\u306f\u306a\u304f\u3001\u753b\u9762\u9077\u79fb\u3084\u5b8c\u4e86\u8868\u793a\u306e\u305f\u3081\u306e\u901a\u77e5\u6587\u3002",
                        "example": "\u914d\u9001\u306f\u5e73\u65e5\u5e0c\u671b\u3067\u3059\u3002"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "\u3053\u306e\u30ec\u30b9\u30dd\u30f3\u30b9/\u64cd\u4f5c\u304c\u5bfe\u5fdc\u3059\u308bALPS\u9077\u79fbID\u3002\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u306e\u72b6\u614b\u9077\u79fb\u8ffd\u8de1\u306b\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "templateId": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "title": "\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8ID",
                        "description": "dtb_template.id \u306e\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217\u30cf\u30f3\u30c9\u30eb\u3002BeMart \u306e TemplateEntity \u5c64\u306f\u6570\u5024\u3067\u306f\u306a\u304f\u6587\u5b57\u5217\u3068\u3057\u3066\u4fdd\u6301\u3059\u308b\u3002Fake \u5b9f\u88c5\u306f `tp-` \u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9\u4ed8\u304d\u306e\u30b7\u30fc\u30c9\u30cf\u30f3\u30c9\u30eb\uff08tp-default-pc / tp-default-sp\uff09\u3092\u6301\u3061\u3001SQL \u5b9f\u88c5\u306f dtb_template.id (int unsigned AUTO_INCREMENT) \u3092\u6587\u5b57\u5217\u5316\u3057\u3066\u4f7f\u7528\uff08\u540c\u30a4\u30f3\u30bf\u30fc\u30d5\u30a7\u30a4\u30b9\u30fb\u7570 ID \u5f62\u72b6\uff09\u3002Template \u306b\u306f list \u30a2\u30d5\u30a9\u30fc\u30c0\u30f3\u30b9\u306e\u307f\uff08goTemplateList\uff09\u3067\u4f5c\u6210\u30fb\u66f4\u65b0\u30fb\u524a\u9664\u304c\u7121\u3044\u305f\u3081 ID \u30b8\u30a7\u30cd\u30ec\u30fc\u30bf\u306f\u5b58\u5728\u305b\u305a\u3001\u30c6\u30f3\u30d7\u30ec\u30fc\u30c8\u306f\u30a4\u30f3\u30b9\u30c8\u30fc\u30e9/fixture \u304c seed \u3057\u305f\u884c\u304b\u3089\u8aad\u307f\u51fa\u3059\u306e\u307f\u3002layoutId / blockId / categoryId \u3068\u540c\u3058 Fake\u2194SQL \u4e8c\u91cd\u6027\u3002templateCode\uff08\u4e00\u610f\u306e install-time \u30b3\u30fc\u30c9\uff09\u3068\u306f\u5225\u7269 \u2014 TemplateEntity \u306e\u6295\u5f71\u306f id \u30cf\u30f3\u30c9\u30eb\u3092\u7528\u3044 templateCode \u306f\u6295\u5f71\u5916 Fake\u89b3\u5bdf\u6587\u5b57\u9577 13\u301c13; \u89b3\u5bdf\u5024 'tp-default-pc', 'tp-default-sp'\u3002",
                        "example": "tp-default-pc",
                        "minLength": 0,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]*$",
                        "$comment": "BeMart/Fake\u5883\u754c\u3067\u89b3\u5bdf\u3055\u308c\u308b\u4e0d\u900f\u660e\u306a\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "transitionId",
                    "templateId"
                ]
            },
            "POST/admin/template/template-listResponse": {
                "title": "POST /admin/template/template-list response",
                "description": "POST /admin/template/template-list response \u306e response body schema\u3002ALPS\u306e\u610f\u5473\u3001be/var/fake\u306e\u89b3\u5bdf\u5024\u3001Resource\u5883\u754c\u306e\u5b9f\u5f62\u72b6\u304b\u3089\u5c0e\u3044\u305fSemantic-Ex\u5236\u7d04\u3002",
                "type": "object",
                "properties": {
                    "message": {
                        "type": [
                            "string",
                            "null"
                        ],
                        "minLength": 0,
                        "maxLength": 32,
                        "title": "\u51e6\u7406\u30e1\u30c3\u30bb\u30fc\u30b8",
                        "description": "/admin/template/template-list \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u306b\u542b\u307e\u308c\u308b\u51e6\u7406\u7d50\u679c\u30e1\u30c3\u30bb\u30fc\u30b8\u3002\u6ce8\u6587\u6642\u304a\u554f\u3044\u5408\u308f\u305b\u6b04\u3067\u306f\u306a\u304f\u3001\u753b\u9762\u9077\u79fb\u3084\u5b8c\u4e86\u8868\u793a\u306e\u305f\u3081\u306e\u901a\u77e5\u6587\u3002",
                        "example": "\u914d\u9001\u306f\u5e73\u65e5\u5e0c\u671b\u3067\u3059\u3002"
                    },
                    "value": {
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 255,
                        "title": "\u8868\u793a\u5024",
                        "description": "/admin/template/template-list \u306e\u30ec\u30b9\u30dd\u30f3\u30b9\u3067\u8868\u793a\u307e\u305f\u306f\u9078\u629e\u80a2\u3068\u3057\u3066\u4f7f\u3046\u5024\u3002\u89aa\u30b3\u30f3\u30c6\u30ad\u30b9\u30c8 `` \u306b\u5c5e\u3059\u308b\u3002"
                    }
                },
                "additionalProperties": false,
                "$defs": {
                    "productCode": {
                        "title": "\u5546\u54c1\u30b3\u30fc\u30c9",
                        "description": "SKU/\u54c1\u756a\u3002\u5728\u5eab\u7ba1\u7406\u3084\u53d7\u6ce8\u660e\u7d30\u3067\u306e\u8b58\u5225\u306b\u4f7f\u7528 SKU\u3068\u3057\u3066\u5728\u5eab\u30fb\u30ab\u30fc\u30c8\u30fb\u53d7\u6ce8\u660e\u7d30\u3092\u63a5\u7d9a\u3059\u308b\u3002Fake\u89b3\u5bdf\u3067\u306fASCII\u82f1\u6570\u3068\u30cf\u30a4\u30d5\u30f3\u4e2d\u5fc3\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 64,
                        "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,63}$",
                        "example": "sample-001"
                    },
                    "email": {
                        "title": "\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9",
                        "description": "\u4f1a\u54e1\u306e\u30ed\u30b0\u30a4\u30f3ID\u3092\u517c\u306d\u308b\u3002\u6709\u52b9\u4f1a\u54e1\u9593\u3067\u4e00\u610f \u30ed\u30b0\u30a4\u30f3ID/\u901a\u77e5\u5148\u3068\u3057\u3066\u4f7f\u3046\u305f\u3081RFC\u6e96\u62e0\u306eemail\u5f62\u5f0f\u3002",
                        "type": "string",
                        "format": "email",
                        "minLength": 3,
                        "maxLength": 254,
                        "example": "alice@example.com"
                    },
                    "postalCode": {
                        "title": "\u90f5\u4fbf\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u90f5\u4fbf\u756a\u53f7\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841 \u65e5\u672c\u56fd\u5185\u4f4f\u6240\u5411\u3051\u3002\u30cf\u30a4\u30d5\u30f3\u306a\u30577\u6841\u307e\u305f\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d8\u6841\u3002",
                        "type": "string",
                        "pattern": "^\\d{3}-?\\d{4}$",
                        "example": "1500001"
                    },
                    "phoneNumber": {
                        "title": "\u96fb\u8a71\u756a\u53f7",
                        "description": "\u65e5\u672c\u306e\u96fb\u8a71\u756a\u53f7\u5f62\u5f0f\uff08\u30cf\u30a4\u30d5\u30f3\u533a\u5207\u308a\uff09 \u65e5\u672c\u56fd\u5185\u96fb\u8a71\u756a\u53f7\u3002Fake\u306f\u30cf\u30a4\u30d5\u30f3\u306a\u3057\u4e2d\u5fc3\u3001\u5165\u529b\u3067\u306f\u30cf\u30a4\u30d5\u30f3\u4ed8\u304d\u3082\u8a31\u5bb9\u3002",
                        "type": "string",
                        "pattern": "^0\\d{1,4}-?\\d{1,4}-?\\d{3,4}$",
                        "minLength": 10,
                        "maxLength": 13,
                        "example": "0312345678"
                    },
                    "price": {
                        "title": "\u91d1\u984d",
                        "description": "EC-CUBE\u306e\u5546\u54c1\u4fa1\u683c\u30fb\u9001\u6599\u30fb\u624b\u6570\u6599\u30fb\u58f2\u4e0a\u91d1\u984d\u3002\u65e5\u672c\u5186\u306e\u6574\u6570\u91d1\u984d\u3068\u3057\u3066\u6271\u3046\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 999999999,
                        "example": 1200
                    },
                    "quantity": {
                        "title": "\u6570\u91cf",
                        "description": "\u8cfc\u5165\u6570\u91cf\u3002\u30ab\u30fc\u30c8\u660e\u7d30\u3068\u53d7\u6ce8\u660e\u7d30\u3067\u5171\u901a\u4f7f\u7528 \u8cfc\u5165/\u8abf\u6574\u6570\u91cf\u3002\u5165\u529b\u306f1\u4ee5\u4e0a\u3001\u8abf\u6574\u5f8c\u3084\u96c6\u8a08\u3067\u306f0\u4ee5\u4e0a\u3092\u8a31\u5bb9\u3059\u308b\u5834\u5408\u304c\u3042\u308b\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 999,
                        "example": 2
                    },
                    "nonNegativeInteger": {
                        "title": "\u975e\u8ca0\u6574\u6570",
                        "description": "\u4ef6\u6570\u3001\u5728\u5eab\u3001\u30da\u30fc\u30b8\u756a\u53f7\u3001\u96c6\u8a08\u5024\u306a\u30690\u4ee5\u4e0a\u306e\u6574\u6570\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "opaqueId": {
                        "title": "\u4e0d\u900f\u660eID",
                        "description": "BeMart/Fake/\u30a2\u30d7\u30ea\u5c64\u3067\u5916\u90e8\u306b\u516c\u958b\u3059\u308b\u6587\u5b57\u5217ID\u3002DB\u63a1\u756a\u5024\u3068\u3057\u3066\u306e\u6570\u5024\u6f14\u7b97\u306b\u306f\u4f7f\u308f\u306a\u3044\u3002",
                        "type": "string",
                        "minLength": 1,
                        "maxLength": 128,
                        "pattern": "^[A-Za-z0-9._:@/-]+$",
                        "example": "customer-001"
                    },
                    "dbId": {
                        "title": "DB\u63a1\u756aID",
                        "description": "EC-CUBE\u30de\u30b9\u30bf\u3084\u5185\u90e8\u884c\u3092\u6307\u3059\u975e\u8ca0\u6574\u6570ID\u3002\u8868\u793a\u3084\u30d5\u30a9\u30fc\u30e0\u5883\u754c\u3067\u306f\u6587\u5b57\u5217\u5316\u3055\u308c\u308b\u5834\u5408\u304c\u3042\u308b\u304c\u3001\u610f\u5473\u306f\u63a1\u756aID\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 2147483647,
                        "example": 1
                    },
                    "mixedBoundaryId": {
                        "title": "\u4e92\u63db\u5883\u754cID",
                        "description": "\u540c\u4e00Resource\u3067Fake\u6587\u5b57\u5217ID\u3068EC-CUBE\u6574\u6570ID\u306e\u4e21\u65b9\u304c\u89b3\u5bdf\u3055\u308c\u308b\u4e92\u63db\u5883\u754c\u5c02\u7528ID\u3002\u6052\u4e45\u7684\u306a\u30c9\u30e1\u30a4\u30f3\u578b\u3067\u306f\u306a\u3044\u3002",
                        "type": [
                            "string",
                            "integer"
                        ],
                        "minLength": 0,
                        "maxLength": 128,
                        "example": "pay-cod",
                        "$comment": "mixedBoundaryId\u306f\u79fb\u884c\u4e92\u63db\u306e\u305f\u3081\u306e\u4f8b\u5916\u3002\u53ef\u80fd\u306a\u3089opaqueId\u307e\u305f\u306fdbId\u3078\u5206\u89e3\u3059\u308b\u3002"
                    },
                    "pref": {
                        "title": "\u90fd\u9053\u5e9c\u770cID",
                        "description": "\u65e5\u672c\u306e\u90fd\u9053\u5e9c\u770c\uff081=\u5317\u6d77\u9053\u301c47=\u6c96\u7e04\u770c\uff09\u3002\u4f4f\u6240\u306e\u6700\u4e0a\u4f4d\u533a\u5206\u3068\u3057\u3066\u9867\u5ba2\u30fb\u53d7\u6ce8\u30fb\u914d\u9001\u5148\u3067\u4f7f\u7528\u3002\u914d\u9001\u6599\u306e\u5730\u57df\u533a\u5206\uff08DeliveryFee\uff09\u3084\u7a0e\u7387\u306e\u5730\u57df\u8a2d\u5b9a\uff08TaxRule\uff09\u306b\u3082\u4f7f\u7528 \u78ba\u5b9a\u4f4f\u6240\u306f1\u301c47\u3002\u5165\u529b\u30d5\u30a9\u30fc\u30e0\u306e\u672a\u9078\u629e\u521d\u671f\u5024\u3068\u3057\u30660\u3092\u8a31\u5bb9\u3059\u308b\u3002",
                        "type": "integer",
                        "minimum": 0,
                        "maximum": 47,
                        "example": 13
                    },
                    "productStatus": {
                        "title": "\u5546\u54c1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u8868\u793a\uff09, 2=\u975e\u516c\u958b\uff08\u30d5\u30ed\u30f3\u30c8\u975e\u8868\u793a\uff09, 3=\u5ec3\u6b62\uff08\u8ad6\u7406\u524a\u9664\u3001\u7ba1\u7406\u753b\u9762\u3067\u3082\u30c7\u30d5\u30a9\u30eb\u30c8\u975e\u8868\u793a\uff09",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 1
                    },
                    "customerStatus": {
                        "title": "\u4f1a\u54e1\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u4eee\u4f1a\u54e1\uff08\u30e1\u30fc\u30eb\u672a\u8a8d\u8a3c\uff09, 2=\u672c\u4f1a\u54e1\uff08\u8a8d\u8a3c\u6e08\u307f\uff09, 3=\u9000\u4f1a\u3002\u9000\u4f1a\u6642\u306f\u30e1\u30fc\u30eb\u30a2\u30c9\u30ec\u30b9\u304c\u7121\u52b9\u5316\u3055\u308c\u308b",
                        "type": "integer",
                        "enum": [
                            1,
                            2,
                            3
                        ],
                        "example": 2
                    },
                    "orderStatus": {
                        "title": "\u6ce8\u6587\u30b9\u30c6\u30fc\u30bf\u30b9",
                        "description": "1=\u65b0\u898f\u53d7\u4ed8, 3=\u6ce8\u6587\u53d6\u6d88, 4=\u5bfe\u5fdc\u4e2d, 5=\u767a\u9001\u6e08\u307f, 6=\u5165\u91d1\u6e08\u307f, 7=\u6c7a\u6e08\u51e6\u7406\u4e2d, 8=\u8cfc\u5165\u51e6\u7406\u4e2d, 9=\u8fd4\u54c1\u3002Symfony Workflow\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u3067\u9077\u79fb\u3092\u5236\u5fa1\u3002\u8a31\u53ef\u3055\u308c\u308b\u9077\u79fb: pay(1->6), packing(1,6->4), cancel(1,4,6->3), back_to_in_progress(3->4), ship(1,6,4->5), return(5->9), cancel_return(9->5)\u30027\u30688\u306fPurchaseFlow\u5185\u3067\u76f4\u63a5\u30bb\u30c3\u30c8\u3055\u308c\u30b9\u30c6\u30fc\u30c8\u30de\u30b7\u30f3\u9077\u79fb\u306e\u5bfe\u8c61\u5916 EC-CUBE\u53d7\u6ce8\u72b6\u614b\u3002Fake/\u7ba1\u7406\u753b\u9762\u3067\u6271\u3046\u72b6\u614bID\u3002",
                        "type": "integer",
                        "minimum": 1,
                        "maximum": 9,
                        "example": 1
                    },
                    "cartKey": {
                        "title": "\u30ab\u30fc\u30c8\u30ad\u30fc",
                        "description": "\u30ab\u30fc\u30c8\u5206\u96e2\u30ad\u30fc\u3002\u5f62\u5f0f: {\u30bb\u30c3\u30b7\u30e7\u30f3\u30d7\u30ec\u30d5\u30a3\u30c3\u30af\u30b9}_{\u8ca9\u58f2\u7a2e\u5225ID}\u3002EC-CUBE\u306f\u8ca9\u58f2\u7a2e\u5225\u3054\u3068\u306b\u30ab\u30fc\u30c8\u3092\u5206\u96e2\u3059\u308b\u305f\u3081\u3001\u7570\u306a\u308b\u8ca9\u58f2\u7a2e\u5225\u306e\u5546\u54c1\u306f\u5225\u30ab\u30fc\u30c8\u306b\u306a\u308b",
                        "type": "string",
                        "minLength": 3,
                        "maxLength": 128,
                        "pattern": "^.+_[0-9]+$",
                        "example": "session-prefix-1_1"
                    },
                    "csrfToken": {
                        "title": "CSRF\u30c8\u30fc\u30af\u30f3",
                        "description": "\u30d5\u30a9\u30fc\u30e0\u9001\u4fe1\u5143\u3092\u691c\u8a3c\u3059\u308b\u30c8\u30fc\u30af\u30f3\u3002Fake\u74b0\u5883\u3067\u306f deterministic \u306a\u5024\u3092\u4f7f\u3046\u3002",
                        "type": "string",
                        "minLength": 8,
                        "maxLength": 160,
                        "pattern": "^[A-Za-z0-9_.:-]+$",
                        "example": "fake-csrf-token-bemart-2026"
                    },
                    "uriReference": {
                        "title": "URI\u53c2\u7167",
                        "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                        "type": "string",
                        "format": "uri-reference",
                        "minLength": 1,
                        "maxLength": 2048,
                        "example": "/products"
                    },
                    "transitionId": {
                        "title": "ALPS\u9077\u79fbID",
                        "description": "alps.json \u306b\u5b9a\u7fa9\u3055\u308c\u305f safe/unsafe descriptor \u306eID\u3002",
                        "type": "string",
                        "minLength": 2,
                        "maxLength": 96,
                        "pattern": "^(go|do)[A-Z][A-Za-z0-9]*$",
                        "example": "doAddCartItem"
                    },
                    "date": {
                        "title": "\u65e5\u4ed8",
                        "description": "\u696d\u52d9\u4e0a\u306e\u65e5\u4ed8\u3002",
                        "type": "string",
                        "format": "date",
                        "example": "2026-01-01"
                    },
                    "dateTime": {
                        "title": "\u65e5\u6642",
                        "description": "\u696d\u52d9\u30a4\u30d9\u30f3\u30c8\u767a\u751f\u65e5\u6642\u3002",
                        "type": "string",
                        "format": "date-time",
                        "example": "2026-01-01T00:00:00+09:00"
                    },
                    "link": {
                        "title": "\u30cf\u30a4\u30d1\u30fc\u30e1\u30c7\u30a3\u30a2\u30ea\u30f3\u30af",
                        "description": "ALPS\u9077\u79fb\u306b\u5bfe\u5fdc\u3059\u308b\u30ea\u30f3\u30af\u3002href\u306fURI\u53c2\u7167\u3002",
                        "type": "object",
                        "required": [
                            "href"
                        ],
                        "additionalProperties": false,
                        "properties": {
                            "href": {
                                "title": "URI\u53c2\u7167",
                                "description": "\u753b\u9762\u9077\u79fb\u30fb\u30ea\u30c0\u30a4\u30ec\u30af\u30c8\u30fb\u30ea\u30f3\u30af\u5148\u3092\u8868\u3059\u76f8\u5bfe\u307e\u305f\u306f\u7d76\u5bfeURI\u3002",
                                "type": "string",
                                "format": "uri-reference",
                                "minLength": 1,
                                "maxLength": 2048,
                                "example": "/products"
                            },
                            "rel": {
                                "type": "string",
                                "minLength": 1,
                                "maxLength": 96
                            },
                            "method": {
                                "type": "string",
                                "enum": [
                                    "get",
                                    "post",
                                    "put",
                                    "patch",
                                    "delete",
                                    "GET",
                                    "POST",
                                    "PUT",
                                    "PATCH",
                                    "DELETE"
                                ]
                            }
                        }
                    }
                },
                "$comment": "Derived from ALPS meaning, be/var/fake observation, and Resource schema shape.",
                "required": [
                    "value"
                ]
            }
        }
    }
}